2025.10.8 总结

CF2145

Candies for Nephews

情况

  • 时间:\(30min\)
  • 预期:\(\text{AC}\)
  • 实际:\(\text{AC}\)

知识点

  • 贪心

思路

我们可以先求出最小需要多少糖果,也就是 \(\lceil\frac{n}{3}\rceil\times3\) 颗糖果,然后减去 \(n\) 即可。

Deck of Cards

情况

  • 时间:\(30min\)
  • 预期:\(\text{AC}\)
  • 实际:\(\text{AC}\)

知识点

  • 模拟

思路

我们发现三种操作的顺序并不会影响结果,所以我们先统计出三种操作的数量,然后假设三种操作分别有 \(a,b,c\) 个,所以有以下两种情况:

  1. \(k=n\),所以一定会被涂完,所以输出 \(n\) 个负号即可。
  2. \(k\neq n\),所以我们先将所有的位置填上加号,然后我们可以发现,\(i<a\)\(i\ge n-b\) 时填负号,不满足上面情况且 \(i<a+c\)\(i\ge n-b-c\) 就填上问号。

所以这道题就做完了。

Monocarp's String

情况

  • 时间:\(30min\)
  • 预期:\(\text{AC}\)
  • 实际:\(\text{AC}\)

知识点

  • 贪心,\(\text{map}\)

思路

我们将 \(a\) 定义为 \(1\)\(b\) 定义为 \(-1\) 所以我们需要找到一个子段的和等于整个数组的和,所以直接用 \(\text{map}\) 存改值上次出现的位置,每次取最小值即可。

Inversion Value of a Permutation

情况

  • 时间:\(1h\)
  • 预期:\(\text{AC}\)
  • 实际:\(\text{AC}\)

知识点

  • \(\text{dfs}\)\(\text{dp}\)

思路

因为当添加一个数 \(i\) 时,最多可以增加 \(i^2\) 个逆序对,所以我们可以先 \(\text{dp}\) 判断是否可行,然后用 \(\text{dfs}\) 构造方案。

posted @ 2025-10-08 10:30  小熊涛涛  阅读(11)  评论(0)    收藏  举报