一道略有难度的dp 设状态$dp[i][j]$表示长度为$i$,开头高度为$j$且为山峰的方案数 考虑到一个序列是对称的,所以总方案数即为$2*\sum_{i=2}^{n}dp[n][i]$ 这样我们只需考虑转移即可 首先,我们发现,如果两个数$i$与$i+1$不相邻,那么交换这两个数之后方案数不变 Read More
非常简单的组合数学+容斥原理 直接计算不好计算,我们用容斥原理计算:所有人随便选-至少有一个人没有礼物+至少有两个人没有礼物... 假设我们有$i$个人没有礼物,那么方案数为$C_{n}^{i}\prod_{j=1}^{m}C_{a[j]+n-i-1}^{n-i-1}$ 后面那个组合数的含义是对于每 Read More
BSGS是Baby-step-Giant-step的简写,是用来求解一类问题的算法 模型:求解方程$A^{x}\equiv B$ mod $C$,保证C为质数 首先,我们分析一下暴力的方法:直接从0开始枚举x计算,直到求出答案为止 时间复杂度? $O(C)$ 等等,为什么是$O(C)$? 根据费马小 Read More
基本同bzoj 1815,一个图的边用或者不用可以看做黑白染色,这样就是bzoj 1815在m=2,p=997时的特例了 bzoj 1815没做过看这里 (这两道题有一点要注意:在计算时里面有一个部分是指数,千万不要一不小心在算指数的时候也取了模!!!) 贴代码: Read More
polya定理板子题... 其实本题难度并不大,但是对我这种初学群论的蒟蒻还是很大一个挑战 首先看见这种带同构的计数,我们应该先把polya扔进来 $ans=\frac{1}{|G|}\sum_{i=1}^{|G|}m^{c(p_{i})}$ 然后我们挨个去找就好了 $G$显然是一个对应边置换的置换 Read More