十二省联考2019

异或粽子(可持久化Trie、堆)

超级钢琴+可持久化Trie???HNOI D1T1怎么不出这种送分题啊

代码

字符串问题(SAM、记搜)

一切字符串问题用SAM就完事了

把原串reverse,这样“某个\(A\)串是前面的\(A\)串支配的\(B\)串的前缀”的条件变成了后缀。而以某个串为后缀的串在SAM的fail树上体现为它的子树。所以我们可以在fail树上,每个点向其儿子连边,对于一个支配关系,\(A\)串对应状态向\(B\)串对应状态连边。这样原图的所有关系就体现为了一张图。判一下环、记搜求一下最长路即可。

注意一点:“\(A\)串对应状态向\(B\)串对应状态连边”有可能会导致当前\(A\)串加入之后,会加入一个长度小于\(B\)串长度,但是和\(B\)串在SAM上处于同一状态的\(A\)串;也有可能存在两个不同的\(A\)串在同一个状态,有可能导致算错贡献。解决的方法就是在连边之前拆SAM上的点,让这两种情况不会出现,也就是让这两种情况对应的串处于不同的状态。

最开始沙雕了,想着对dfn序线段树优化连边,然后常数就大了很多……

代码

骗分过样例(???)

1_998244353就是\(19^n \mod 998244353\)

1?的模数看起来就很小,直接暴力

1?+询问的\(n\)不是很大,把所有询问的\(n\) sort一遍,发现最近的两个\(n\)相差为\(2\),用这两个询问+暴力质因数分解就可以得到模数

1wa_998244353的本质是暴力算快速幂然后爆了int。我也不知道怎么发现的有一个长度约为50000的循环节,直接预处理循环节和循环节之前的部分。

2p是判断质数,Miller_rabin即可

2u是计算莫比乌斯函数,暴力Pollard_rho只能过第一个点……

筛出\(10^6\)范围内的质数,每一次询问将所有数的\(10^6\)范围内的质因子的贡献全部计算掉,那么剩下有贡献的部分只有三种情况:\(p,p^2,pq(p , q \in Prime)\)。对于\(p\)直接Miller_rabin,对于\(p^2,pq\)求一下平方根

PS:这里的Miller_rabin只用\(24251\)做二次探测都可以过是什么鬼

2g是求原根,\(998244353\)直接暴力,对于\(2*3*5*7*11*13*19*23+1\)考虑:先求出一个原根\(g\),把所有数\(x\)表示为\(g^y\)的形式,那么如果\(x\)是原根,那么\(gcd(x , 2*3*5*7*11*13*19*23) = 1\)

2g+有一个模数不晓得,或许可以暴力求?鬼知道5h暴力能不能求出来

代码

皮配(背包)

50pts很简单,设\(dp_{i,j,k}\)表示考虑了前\(i\)个学校,蓝阵营\(j\)人、鸭派系\(k\)人的方案数,同一个学校一起转移。复杂度\(O(TNM^2)\)

对于\(k=0\)的情况,因为选择阵营和选择派系之间是独立的,选择哪个阵营不会影响选择哪个派系,反过来也一样。所以总方案数等于分配派系的方案数×分配阵营的方案数,两个分别背包一下。

\(k=30\)时,会有\(30\)个城市在选择了阵营之后有某些学校不能选择某一个派系,而没有限制的城市跟\(k=0\)相同。我们可以把这\(30\)个城市单独拿出来做50pts的DP,对于其他的做k=0的DP。

但是如果这\(30\)个城市的人数总和很大,复杂度仍然难以接受。但是注意到:对于有限制的城市中没有限制的学校,选择派系跟选择阵营仍然是无关的,所以并不需要在50pts的暴力做法中记录,而是可以放在k=0的DP中计算贡献。

所以设\(f_{i,j,k}\)表示考虑了前\(i\)个有限制的城市,这些城市的所有学校中选择蓝阵营的人数为\(j\),这些城市有限制的学校中选择鸭派系的人数为\(k\)的方案总数,\(g_{i,j}\)表示考虑了前\(i\)个没有限制的城市,选择蓝阵营的总人数为\(j\)的方案数,\(h_{i,j}\)表示考虑了前\(i\)个没有限制的学校,选择鸭派系的总人数为\(j\)的方案数。

\(f\)的转移先枚举当前城市选择哪一个阵营,再对于有限制的学校考虑选择派系。而有限制的城市中无限制的学校选择派系的贡献则放入了\(h\)中进行计算。

最后统计答案只需要枚举\(f_{i,j,k}\)中的\(j,k\),这样\(g\)\(h\)的有效转移对应一段区间,前缀和一下。总复杂度\(O(T(10K^2M + NM))\)

代码

春节十二响(贪心、启发式合并)

一条链的贪心就是:把元素放进两个堆里,每一次从两个堆里弹最大值,类似于启发式合并

然后把它放到树上就可以了

代码

希望

题解传送门

posted @ 2019-04-12 10:28  cjoier_Itst  阅读(515)  评论(4编辑  收藏  举报