2024年8月杂题

[ARC068F] Solitaire

难。题目的条件告诉我们最后队列里呈现“V”字形。如何计算删数的方案??找到合法方案的约束条件,用 DP 去计数,构造过程,都很难。

P2839 [国家集训队] middle

中位数的常见处理方法:二分答案,把小于它的设为 \(-1\),大于等于的设为 \(1\),看和是否大于等于 \(0\)

[AGC036C] GP 2

这种操作问题,通常要转化操作,寻找操作的等价条件。题目中的操作很玄乎,我们分析这种操作的结果是什么。对于最后的序列 \(a\),它需要满足以下三个条件:

  • \(\sum a_i=3m\)

  • \(\max a_i\leq 2m\)

  • \(\sum (a_i\bmod 2)\leq m\)

先不考虑条件 2,我们可以枚举奇数个数,设其为 \(k\),然后将所有奇数全部减 \(1\),则总和变为 \(3m-k\),设其为 \(2p\)(若不是偶数则答案为 \(0\))。问题就变成了 \(n\) 个非负整数和为 \(p\),所以答案为 \(\sum\limits_{i=1}^n[(3m-i)\bmod 2=0]\dbinom{n}{i}\times \dbinom{p+n-1}{n-1}\)

然后再减去多余的部分,发现最多只有一个位置不满足条件 2,设其为 \(a_x\),然后我们将其减去 \(2m+1\),则问题变成了 \(n\) 个非负整数和为 \(m-1\) 的方案,此时条件 3 无需考虑,这部分为 \(n\times \dbinom{m-1+n-1}{n-1}\)

时间复杂度 \(\mathcal{O}(n)\)

[AGC006D] Median Pyramid Hard

很神奇的题目。

中位数同样考虑二分答案,将小于 \(k\) 的设为 \(-1\),大于等于的设为 \(1\)。然后好像没啥用了……

手玩过程,发现相邻两个一样的可以一直往上走,其实就是 \(1\)\(-1\) 比赛看谁登顶,显然离中间近的那一对最先登顶。特判没有相邻的情况。

posted @ 2024-08-15 20:20  xishanmeigao  阅读(7)  评论(0编辑  收藏  举报