摘要:
本来打完CCPC final的时候就想写的,感觉能写好多话,但是因为一堆事情现在才想起有这事,感觉也没啥好说的了,哈哈哈。 2019年真的是背水一战的一年,作为大四狗最后的机会,感觉应该还是完成了目标,浙江省赛金,ICPC邀请赛(南昌)金 CCPC(厦门)金,ICPC(南京、南昌)金,除了太菜进不去 阅读全文
摘要:
Find String in a Grid 把矩阵按行接起来求一个SA, 把矩阵按列接起来求一个SA, 然后就枚举询问串的转折点, 转换成求矩阵内二维数点的个数。 阅读全文
摘要:
Choosing Two Paths 搞不懂为啥我要写换根啊, 这么麻烦。。 阅读全文
摘要:
Sonya and Matrix Beauty 处理子矩阵的一般方法, 把多行压缩成一行,然后跑manacher, 压缩的话用hash就好了。 阅读全文
摘要:
直接把 r 加进去建虚树, 考虑虚树上的dp, 我们考虑虚树的dfs序的顺序dp过去。 dp[ i ][ j ] 表示到 i 这个点为止, 分成 j 组有多少种合法方案。 dp[ i ][ j ] = dp[ i - 1 ][ j ] * (j - have[ i ]) + dp[ i - 1 ][ 阅读全文
摘要:
Alex and a TV Show 如果cnt[ i ][ j ] 表示第 i 个集合数字 j 的奇偶性的话第三部操作很难处理。 所以我们考虑cnt[ i ][ j ] 表示第 i 个集合 j 的倍数的奇偶性, 第三部操作就想到与两个bitset取&操作。 然后考虑询问的时候还原回去, 就相当于& 阅读全文
摘要:
U2 把坐标转(x, y)换成(x, y - x * x)之后就是求个上凸包 阅读全文
摘要:
Leaf Partition 考虑树形dp dp[ u ][ 0 ] 表示 u 这棵子树处理完, 不能向上延伸的方案数。 dp[ u ][ 1 ] 表示 u 这棵子树处理完, 必须向上延伸的方案数。 dp[ u ][ 2 ] 表示 u 这棵子树处理完, 可以向上延伸的方案数。 然后转移的时候细心一点 阅读全文
摘要:
Hot is Cold 好像我写麻烦了, 其实只用线段树维护区间每个数反转, 区间赋值就可以。 阅读全文
摘要:
Natasha, Sasha and the Prefix Sums 我们考虑每种方案的贡献放到最靠右的最大前缀上, 我们枚举最大的位置和最大的值, 发现左边和右边的方案数都可以用卡特兰数表示。 阅读全文