摘要:
LINK:国王饮水记 看起来很不可做的样子. 但实际上还是需要先考虑贪心. 当k==1的时候 只有一次操作机会。显然可以把那些比第一个位置小的都给扔掉. 然后可以得知剩下序列中的最大值一定会被选择. 考虑是否选出其他数字 容易想到如果选择了必然要比拿到最大的之后的平均数要大. 这样贪心下去即可. 考 阅读全文
摘要:
LINK:P5410 模板 扩展 KMP Z 函数 画了10min学习了一下. 不算很难 思想就是利用前面的最长匹配来更新后面的东西. 复杂度是线性的 如果不要求线性可能直接上SA更舒服一点? 不管了 反正这个知识点填过了.. code //#include<bits/stdc++.h> #incl 阅读全文
摘要:
LINK:Typewriter 好久没写SAM了 什么都给忘了. 写了大概2h.感觉被卡常还看了题解. 考虑dp 然后容易想到维护前面的一个j决策 尽可能小. 然后每次考虑向后加一个字符 不过不行就跳父亲. 我的做法是先建立SAM 然后每个点维护right集中最小的就可以维护决策了. 常数大的很. 阅读全文
摘要:
LINK:数列求和 每次遇到这种题目都不太会写。但是做法很简单. 终有一天我会成功的。 考虑类似等比数列求和的东西 帽子戏法一下. 设$f(k)=\sum_nika^i$ 考虑$af(k)$这个式子 两式做差. \((a-1)f(k)=n^n\cdot a^{n+1}-a+\sum_{i=2}^n{ 阅读全文
摘要:
LINK:CountTables 神题! 首先单独考虑行不同的情况 设$f_i$表示此时有i列且 行都不同. 那么显然有 \(f_i=(c^i)^\underline{n}\) 考虑设$g_i$表示此时有i列且 行列都不同. 考虑将$g_i$和$f_i$联系起来. 那么对于 \(f_m\) 考虑其有 阅读全文
摘要:
LINK:冒泡排序 神题。 可以想到爆搜 期望得分5~10分。 打成这个样子心态不得爆炸? 仔细分析 一个不合法序列还有什么标志. 容易想到某个数字离自己位置相反的方向多走了一步. 考虑单独对每个数字进行分析 每次都是这个数字前面的数字会让它多走一步. 对于每个位置 i 位置上的数字 \(a_i\) 阅读全文
摘要:
LINK:Painting Graphs with AtCoDeer 看英文题面果然有点吃不消 一些细节会被忽略掉。 问每条边都要被染色 且一个环上边的颜色可以旋转. 用c种颜色有多少本质不同的方法。 注意这里的环指简单环 即不能经过一个节点两次。 考虑环套环的情况 手玩可以发现 可以将这种情况出现 阅读全文
摘要:
LINK:小Z的礼物 太精髓了 我重学了一遍min-max容斥 重写了一遍按位或才写这道题的。 还是期望多少时间可以全部集齐. 相当于求出 $E(max(S))$表示最后一个出现的期望时间. 根据min-max容斥 显然有 \(E(max(S))=\sum_{T\subseteq S}(-1)^{| 阅读全文
摘要:
LINK:I 君的探险 神仙题! 考虑一个暴力的做法 每次点亮一个点 询问全部点 这样询问次数为 \(\frac{n\cdot (n-1)}{2}\) 可以通过前5个点. 考虑都为A的部分分 发现一个点只会和另外一个点进行连边. 且询问次数要求$nlogn$ 需要分治 二分等方法。 一个想法是 每次 阅读全文
摘要:
LINK:Dark Horse 首先考虑1所在位置. 假设1所在位置在1号点 对于此时剩下的其他点的方案来说. 把1移到另外一个点 对于刚才的所有方案来说 相对位置不变是另外的方案. 可以得到 1在任何位置剩下的方案数都相同 所以不妨设1所在点为1 求出方案乘以n. 考虑怎么求方案 即求出剩下的n- 阅读全文