ABC178 题解

A - Not

题面

直接输出 \(1-x\) 即可。

B - Product Max

题面

发现答案一定是在 \(a\times c\)\(a\times d\)\(b\times c\)\(b\times d\) 中出现。

输出它们四个中的最大值即为答案。

C - Ubiquity

题面

容斥一下,答案为 总方案数 - 0 或 9 没有出现过的方案数

后面一块可以继续容斥,为 0 没有出现的方案数 + 9 没有出现的方案数 - 0 和 9 都没有出现的方案数,也就是 \(2\times 9^n-8^n\)

最终答案即为 \(10^n-2\times 9^n+8^n\)

D - Redistribution

题面

\(dp_{i,j}\) 表示长度为 \(i\) 的序列和为 \(j\) 的方案数。

转移时枚举第 \(i\) 位填的是数 \(k\),那么转移就是 \(dp_{i,j+k}+=dp_{i-1,j}\)

理论上会 TLE,可以开 O2 艹过去或者用前缀和优化(?)。

贴一下官方题解

代码


upd:

发现其实不要这么复杂……

\(dp_i\) 表示和为 \(i\) 的方案数。

枚举最后一位填的是什么,转移就是 \(dp_i=\sum\limits_{j=3}^i dp_j\),边界 \(dp_0=1\)

答案即为 \(dp_s\)

E - Dist Max

题面

好题啊。

首先我们要知道,平面上两点 \((x_1,y_1)\)\((x_2,y_2)\) 的曼哈顿距离等于 \((x_1-y_1,x_1+y_1)\)\((x_2-y_2,x_2+y_2)\) 的切比雪夫距离。这个可以通过去绝对值来证明。

\(\texttt{P.S.}\) 切比雪夫距离:\(\max(|x_1-x_2|, |y_1-y_2|)\)

也就是 \(\max(|x_1-y_1-(x_2-y_2)|,|x_1+y_1-(x_2+y_2)|)\)

不妨设 \(a_i\) 表示 \(x_i-y_i\)\(b_i\) 表示 \(x_i+y_i\)

那么我们就是要求 \(\max(|a_1-a_2|,|b_1-b_2|)\)

也就是 \(\max(|a_i-a_j|,|b_i-b_j|)=\max(\max a_i-\min a_i,\max b_i-\min b_i)\)

这些都可以直接求,复杂度 \(\mathcal{O}(n)\)

官方题解

std

当然也可以分类讨论拆绝对值,也是这样做的 233

F - Contrast

题面

贪心。

有几种方法,这里直接贴别人的代码了 TNT。

官方题解

方法 1

方法 2

posted @ 2020-09-13 22:59  csxsi  阅读(320)  评论(0编辑  收藏  举报