A题 暴力呗,签到题啊。会写判质数就可以了。 B题 并查集,也没有什么别的东西。不过数据不是很强大。不用压缩路径好像也能过。统计一下一个集合有多少个元素减一就好了。时间复杂度:O(m)+O(n)? C题 DP吧。 先可以把删除长度所的到的价值用O(n^2)预处理一下。得到删除长度所得到的最大价值。设x[i]为删除长度i所得到的最大价值,等于max(x[j]+x[i-j],x[i])(0<=j<=i)(虽然不这么做也可以得到答案)。 考虑题目所给的操作,我们从中删除一段,再把前后拼接起来,如何设置状态? 先看一个例子:1...