该文被密码保护。 阅读全文
摘要:
嘟嘟嘟 省选竟然考了一个可持久化trie,就挑着我不会的考。 话说考场上我确实写了一个trie的做法,只不过一直没调出来然后就只剩暴力分了。 现在想想实在是太蠢了,明明对算法没有把握,却头脑一热在这题上刚了两个点,为什么就不先把第二题的暴力写写呢………………………… 学过主席树,就觉得可持久化tri 阅读全文
摘要:
嘟嘟嘟 LCA水题,第二问看一下$x$到$lca$的路径长度是否够$k - 1$,不过的话就从$y$出发往上跳。 #include<cstdio> #include<iostream> #include<cmath> #include<algorithm> #include<cstring> #in 阅读全文
摘要:
嘟嘟嘟 今天复习一下SAM。 lcp固然不好做,干脆直接翻过来变成后缀。首先答案一定满足单调性,所以我们二分lcp的长度$mid$,然后判断$s[d \ldots d + mid - 1]$是否在$s[b \ldots a]$(别忘了整个串是反过来的)中出现即可。 怎么判断是否出现呢?其实就是判断这 阅读全文
摘要:
嘟嘟嘟 这题当时没想出来(因为本人实在不太擅长计数),然后又被luogu的第一篇题解吓怕了,就咕了一小段时间再写。 其实这题不是很难。 做法就是基础容斥+NTT。 首先出现$S$次的颜色最多有$N = min { \frac, m }$种。 我们令$dp[i]$表示出现$S$次的颜色至少有$i$种的 阅读全文
摘要:
"嘟嘟嘟" 昨天模拟T2 lba和dukelv都说和这题特别像(然而他俩还是没做出来hhhh),我今天一看,果不其然,大体思路都一样。 但自认为这题比模拟题要难一些,自己也是因为没有彻底理解浪debug了半天,导致费了很长时间。 当$n \leqslant 30$时,因为质数只有最多10个,所以可以 阅读全文
摘要:
"嘟嘟嘟" 一道比较有意思的dp。 这题关键在于状态的设计。如果像我一样令$dp[i][j]$表示选到第$i$个物品,$\sum c$能都等于$j$的话,那就是$O(qnk)$了,怒拿一半分…… 正解应该是令$dp[i][j]$表示选出的物品的$a$小于等于$i$,$\sum c$等于$j$时,$b 阅读全文
摘要:
嘟嘟嘟 这种计数大题就留给南方的计数神仙们做吧…… 刚开始我一直想枚举点,考虑新加一个点在根节点的左右子树,以及左右子树大小怎么分配,但是这样太难计算新的点带来的贡献了。 后来lba又提示我枚举边,考虑每一条边的贡献。 这确实是一个好主意,枚举边的同时考虑边两侧的点数,但可怕的是我一直把他当成无根树 阅读全文
摘要:
"嘟嘟嘟" 先看了一遍lucas,还是只能拿50分(~~似乎已经满足了~~)。 正解当然还是看某个大佬的啦。 我们要求的就是 $$f(n, k) = \sum _ {i = 0} ^ {k} C _ {n} ^ {i} \% p$$ 然后根据lucas定理,就开始~~愉快~~的推式子了…… $$ \ 阅读全文
摘要:
嘟嘟嘟 这题其实就是一个线段树维护最大连续和的水题。 别的操作不说,操作1只要二分找区间前$k$个0即可。 需要注意的是,因为操作1两区间可能有交,因此要先清空再二分查询…… 复杂度$O(n log ^ 2 n)$。 #include<cstdio> #include<iostream> #incl 阅读全文