摘要: 考虑生成函数来做 g(x)函数就是0+0*x+...+1*x^s+...+|∑|^(n-s)x^n 就是最后s位必须填这个串,但是前面随便填的方案数 然后枚举之前出现了哪个串(包括自己),如果没有相交,就是fj(x)*g(x),还有就是有前后缀有相交部分, Pji(x)中的第k位,表示i的长度为m- 阅读全文
posted @ 2019-02-18 21:07 *Miracle* 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 挺神仙的置换题 SP422 TRANSP2 - Transposing is Even More Fun 这个博客除了开始举例子别的都是对的: https://blog.csdn.net/BraketBN/article/details/50668414 首先理解题意: 就是单纯的矩阵转置,一行一行 阅读全文
posted @ 2019-02-18 16:06 *Miracle* 阅读(374) 评论(0) 推荐(0) 编辑
摘要: n<=1e9就要考虑倍增、矩阵乘法这种了 假设L=0 考虑枚举二进制下,所有X与R的LCP长度,前len高位 对于第len+1位,假设R的这一位是1 如果一个x的这一位是0了,那么后面可以随便填 我们就钦定一个len+1位是0的x0来挽救,别的随便填,最后距离K差多少,就让这个x0来变成这个数 而且 阅读全文
posted @ 2019-02-18 11:09 *Miracle* 阅读(227) 评论(0) 推荐(0) 编辑
摘要: https://vjudge.net/problem/TopCoder-12891 暴力想法是:dp[i][s1][s2]前i个,第一个集合xor是s1,第二个集合xor是s2方案数O(n^3) 有xor 不妨按位考虑 枚举两个集合xor的LCP长度L 考虑从高到低前L位相同,第L+1位xor(X) 阅读全文
posted @ 2019-02-18 10:33 *Miracle* 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 题面:已经没有什么好害怕的了 首先,大k个,k=(n+k)/2,糖果多的恰好有k组 一个通用技巧是: 找到两个数组f,g f范围宽松好统计,g范围严格难统计但是和答案有直接关系, 这样,只要得到f和g的关系,就可以找到答案! 经常是可以得到f由g的表达式,然后斯特林反演或者二项式反演得到g的求法 也 阅读全文
posted @ 2019-02-18 09:15 *Miracle* 阅读(389) 评论(0) 推荐(0) 编辑