摘要:
LINK:生成树 这场比赛我打的真失败 T3是比较容易的 却一直刚 那道"数论" 10分其实搜一下全排列。 30分容易想到对边进行装压dp。 不过存在一些细节 可以对于一个连通块的壮大进行装压 也就是每次需要联通两个块的时候使用关键边 然后再这两个块之间加边知道加满需要其他边。 复杂度 $2^{21 阅读全文
摘要:
LINK:Happy Triangle 这道题很容易。 容易想到 a+b<x a<x<b x<a<b 其中等于的情况在第一个和第三个之中判一下即可。 前面两个容易想到set来找前驱后继 第三个 考虑比x大的数字中两个连着的数字差的最小值 直接用线段树维护一下即可。 code //#include<b 阅读全文
摘要:
LINK:Greater and Greater 确实没能想到做法。 考虑利用bitset解决问题。 做法是:逐位判断每一位是否合法 第一位 就是 bitset上所有大于$b_1$的位置 置为1. 那么右移一位就得到下次判断的东西 然后 处理处相应>=$b_2$的东西 然后再&一下。 这样复杂度为$ 阅读全文
摘要:
LINK:qiqi20021026的T1 考场上只拿到了50分的$nq$暴力。 考虑一个区间和一个区间配对怎么做 二分图最大带权匹配复杂度太高。 先考虑LCS的问题 常见解决方法是后缀数组/trie树. 一个贪心是 每次让贡献最大的一对配对是最优的策略。 具体证明可以利用扰动法 或者观察法。 即设$ 阅读全文
摘要:
LINK:Exclusive OR 没做出 原因前面几篇说过了. 根据线性基的知识容易推出 不超过$w=log Mx$个数字即可拼出最大值 其中Mx为值域. 那么考虑w+2个数字显然也为最大值... 现在要处理的是 $1~w-1,w+1,w+3,w+5...$这些位置上的值怎么求. i个数字异或出来 阅读全文
摘要:
LINK:探险队 非常难的题目 考试的时候爆零了 完全没有想到到到底怎么做 (当时去刚一道数论题了。 首先考虑清楚一件事情 就是当前是知道整张地图的样子 但是不清楚到底哪条边断了。 所以我们要做的其实就是选择最优的路线 使得遇到断边情况下是最优的。 可以发现在某个点出现断边的时候 此时断的一定是这个 阅读全文
摘要:
LINK:holiday 考虑第一个subtask. 容易想到n^2暴力枚举之后再暴力计算答案. 第二个subtask 暴力枚举终点可以利用主席树快速统计答案. 第三个subtask 暴力枚举两端利用主席树计算贡献。 最后一个 subtask. 容易想到还是固定左端点来不断的寻找右端点。 不过很遗憾 阅读全文