Educational Codeforces Round 165 (Rated for Div. 2) 题解

A

对于 \(i \to p_i\) 连边。

如果存在二元环,则答案为 2。

否则答案为 3 。

B

非降序排序:0 全部在 1 前面。

令 0 的个数为 z 。

从左往右,将前 z 个全部填上 0 。

填第 \(i\) 位时,每次填的最小代价为:若第 \(i\) 位为 1 ,第 \(i\) 位右边的第一个 0\(i\) 之间的字符个数。(贪心)

如何计算答案???

\(num\) 为到 \(i\) 为止,出现了多少 1

从左往右扫,若第 \(i\) 位为 0 ,则 \(sum = sum + num + 1\) (若 num > 0) 。

posted @ 2024-04-30 19:45  NEUQ-zyb  阅读(108)  评论(0)    收藏  举报