Codeforces Round #779 VP 记录

A. Marin and Photoshoot

手膜样例,发现每两个 \(0\) 之间都要放两个 \(1\),于是扫一遍数一下即可。

B. Marin and Anti-coprime Permutation

赛时的时候直接观察样例得到的结论。

发现 \(n\) 为奇数时答案为 \(0\)\(n\) 为偶数时答案为 \(1^2 \times 2^2 \times 3^3 \times \cdots \times (\frac{n}{2})^2\)

赛后翻题解,题解给出的解释时,发现不管怎么样,最大公约数 \(g \le 2\), 然后就要把奇数放在偶数位置,偶数放在奇数位置,方案数为 \((\frac{n}{2}!)^2\)

C. Shinju and the Lost Permutation

日!这个题还是找规律,但是我赛时并没有找到/kx

先说几个结论,如果没有 \(1\) 或者有多个,一定无解。

如果 \(n=1\),一定有解。

这些比较显然。

然后来想这个,考虑把一个数从后面放到前面,如果它是最大的,那么它可以让答案变为 \(1\),如果它是最小的,那么它可以让答案在原来的基础上 \(+1\),所以说这已经是它最大的可能发挥作用的区间了,那如果 \(c_i - c_{i-1} \ge 2\),那么抱歉,这种情况一定不会存在,因此无解。

其他情况为有解。

D1. 388535 (Easy Version)

统计一下 \(a\) 数组里每一位上 \(1\) 的个数和 \(0\) 的个数,与原排列相比,如果“反了”,这一位就填 \(1\),如果不反,那无所谓。

posted @ 2022-03-29 10:23  Suzt_ilymtics  阅读(48)  评论(0编辑  收藏  举报