摘要:
传送门 小半个月前的测试,现在翻出来。 考试时我和sxyA了这题。 当时随便搞了个dp,dp[i][j]表示i个数能看到j个的情况数,考虑新加入一个比之前i-1个数都小的数,能看到它的情况是它加到第一个,不能看到它的情况是它加到第1~i-1个数之后。所以 dp[i][j]=dp[i-1][j-1]* 阅读全文
摘要:
传送门 一道后缀自动机的简单题; 对串建立后缀自动机,然后基排算每个点的right集合大小,它能到达的点集的大小,它能到达的点集的right集合大小。 然后直接在自动机上跑就好了。 //Achen #include<algorithm> #include<iostream> #include<cst 阅读全文
摘要:
传送门 生成树计数裸题,因为模数不是质数所以要用辗转相除的高斯消元。 de了很久的bug然后发现一个变量A赋值后下一行又申明了一个新的临时变量A(: //Achen #include<algorithm> #include<iostream> #include<cstring> #include<c 阅读全文
摘要:
传送门 题目可转换为已知一个串kmp之后的nxt数组,求字典序最小的原串。 已知第i位结尾的串循环节长度位x,那么nxt[i]=i-x; 当nxt不为0时,s[i]=s[nxt[i]]; nxt为0时,那么考虑kmp的过程,沿着nxt[i-1]一直往前跑找到的每一个j,s[j+1]都不能是现在的s[ 阅读全文
摘要:
A 题面 .题解传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<queue> #include<cmath> typede 阅读全文
摘要:
2-sat模板 输出方案 黄学长博客 传送门 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<vector> #include<q 阅读全文