[容斥系数 记录状态DP] 2016 计蒜之道 初赛 第四场 遗失的支付宝密码

题解:http://blog.jisuanke.com/?p=270

其实答案最后答案的结构显然是 c_1 \cdot m^1 + c_2 \cdot m^2 + ... + c_n \cdot m^nc1m1+c2m2+...+cnmn 这样的,系数 c_ici 只和nn 有关,于是可以本地打表出来。这样就可以很快解决这个 case。

这就是打表出容斥系数了

#include<cstdio>
int cnt[51][101]={1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,1,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,2,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,-1,1,1,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,-1,0,2,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,-3,0,-1,0,0,1,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,-3,0,-1,1,1,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,-1,0,-1,0,-3,0,0,2,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,-1,-1,-1,-1,0,-3,1,1,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,-1,-1,-2,-1,-1,0,-2,2,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,1,-1,-2,-2,-1,-1,1,-1,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,1,0,0,-1,1,-2,-2,-2,-1,0,2,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,2,0,0,-1,-1,0,-2,-2,-2,0,1,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-3,6,1,1,-1,2,0,-1,-1,-2,0,-2,-2,-1,1,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-2,2,1,6,-1,0,-1,2,-1,-1,-2,-2,0,-2,-1,0,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-4,4,0,4,0,5,-2,0,-1,1,-1,-2,-2,-2,0,-1,0,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-4,4,-2,5,1,2,0,4,-2,0,-2,1,-2,-2,-2,-2,1,0,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-7,7,-3,6,-2,5,0,2,-1,4,-2,-1,-2,0,-2,-2,-2,-1,2,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-5,0,-1,9,-3,5,-1,4,0,1,-1,4,-3,-1,-3,0,-2,-2,-1,0,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-8,4,-2,3,1,8,-5,7,-2,4,-1,1,-1,3,-3,-2,-3,0,-2,-1,0,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-7,0,-4,8,0,4,-1,7,-3,6,-2,3,-1,1,-2,3,-4,-2,-3,0,-1,0,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-7,0,-4,3,-1,9,0,3,-2,9,-4,6,-3,3,-1,0,-2,2,-4,-2,-3,1,0,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-7,-2,-1,0,-1,6,-1,8,0,2,0,8,-4,5,-3,3,-2,0,-3,2,-4,-2,-2,2,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-7,-4,-2,2,0,2,1,5,-1,8,-1,4,-1,8,-5,5,-3,2,-2,-1,-3,2,-4,-1,-1,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-8,-3,-3,-1,1,3,1,3,1,5,-1,7,1,3,-1,7,-5,5,-4,2,-3,-1,-3,2,-3,0,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-5,-7,-5,0,1,1,2,3,1,4,1,5,-2,9,0,3,-2,7,-5,4,-4,1,-3,-1,-3,3,-2,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-7,-6,-3,-3,-2,3,3,1,1,4,2,4,1,4,0,8,0,2,-2,7,-6,4,-5,1,-3,-1,-2,4,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-3,-11,-3,-4,-1,0,1,4,2,1,2,5,2,4,0,6,-1,8,-1,2,-2,6,-6,3,-5,1,-3,0,-1,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-5,-11,1,-8,-1,-1,1,3,1,2,3,2,3,5,2,3,2,5,-1,7,-1,2,-3,6,-7,3,-5,1,-2,1,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-18,-2,-7,4,-7,2,1,3,2,0,3,4,3,3,5,1,5,1,5,-2,7,-1,1,-3,5,-7,3,-5,2,-1,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-11,-5,-13,0,-2,4,-4,3,2,3,1,1,4,5,3,3,4,3,4,1,4,-2,7,-2,1,-4,5,-7,3,-4,3,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,-20,-2,-10,-1,-10,4,-2,7,-4,3,3,2,2,2,5,5,3,2,6,2,4,0,4,-2,6,-2,0,-4,5,-7,4,-3,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,-18,3,-14,-5,-6,2,-6,4,0,6,-3,4,2,3,3,3,5,5,2,4,5,2,3,0,4,-3,6,-3,0,-4,5,-6,5,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,-23,-1,-16,6,-15,0,-4,6,-7,5,0,7,-2,3,3,4,4,3,5,4,4,3,5,1,3,0,3,-3,5,-3,0,-4,6,-5,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,-20,5,-21,1,-14,5,-10,2,0,4,-7,6,1,8,-3,4,4,5,4,3,4,6,3,3,4,1,3,-1,3,-4,5,-3,0,-3,7,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,-29,5,-19,8,-22,6,-16,10,-8,5,-3,5,-6,7,2,7,-2,5,5,5,4,2,6,5,3,2,4,1,2,-1,2,-4,5,-3,1,-2,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,-15,0,-26,3,-15,9,-18,4,-11,11,-6,3,-2,6,-5,8,1,8,-1,6,5,5,3,4,5,5,2,2,4,0,2,-2,2,-4,5,-2,2,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,-35,5,-16,7,-29,5,-13,13,-20,9,-11,12,-7,4,-1,7,-4,7,2,9,0,6,5,4,5,3,5,4,2,2,3,0,1,-2,2,-4,6,-1,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,-23,3,-29,3,-13,6,-25,6,-9,11,-16,8,-9,11,-6,5,0,8,-5,8,3,10,0,6,4,6,4,3,4,4,2,1,3,-1,1,-2,2,-3,7,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,-26,11,-34,11,-32,7,-14,10,-24,10,-12,14,-16,10,-10,12,-5,6,1,7,-4,9,4,10,0,5,6,5,4,2,4,4,1,1,2,-1,1,-2,3,-2,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,-25,7,-25,8,-29,6,-26,6,-10,11,-20,6,-10,15,-14,9,-9,13,-4,7,0,8,-3,10,4,10,-1,7,5,5,3,2,4,3,1,0,2,-1,1,-1,4,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,-38,14,-29,12,-33,15,-33,12,-27,10,-9,14,-25,9,-9,17,-15,10,-8,14,-3,6,1,9,-2,10,4,9,1,6,5,4,3,2,3,3,0,0,2,-1,2,0,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,36,-19,12,-42,14,-25,5,-27,12,-27,11,-23,10,-7,10,-22,10,-7,16,-14,11,-7,15,-4,7,2,10,-2,10,3,11,0,6,4,4,3,1,3,2,0,0,2,0,3,-1,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,0,0,46,-33,18,-32,16,-43,15,-30,12,-30,18,-28,15,-24,11,-10,13,-21,12,-8,17,-13,12,-6,14,-3,8,3,10,-2,9,5,10,0,5,4,4,2,1,2,2,0,0,3,1,2,-1,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,0,0,47,-25,22,-45,15,-28,13,-40,9,-22,9,-24,17,-25,13,-22,8,-7,14,-19,11,-7,18,-12,13,-7,15,-2,9,3,10,-3,11,4,10,-1,5,4,3,2,0,2,2,0,1,4,0,2,-1,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,0,0,54,-28,22,-38,22,-48,16,-31,18,-46,17,-25,15,-26,19,-26,15,-25,11,-6,16,-20,12,-6,19,-11,12,-6,16,-1,9,3,9,-1,10,4,9,-1,5,3,3,1,0,2,2,1,2,3,0,2,-1,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,0,0,52,-21,25,-42,22,-34,13,-46,15,-27,13,-38,14,-19,12,-25,19,-24,12,-22,12,-4,15,-19,13,-5,20,-12,13,-5,17,-1,9,2,11,-2,10,3,9,-1,4,3,2,1,0,2,3,2,1,3,0,2,-1,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1,0,0,0,59,-26,26,-35,21,-43,26,-43,15,-47,20,-32,21,-41,19,-23,14,-25,21,-27,15,-21,14,-5,16,-18,14,-4,19,-11,14,-4,17,-1,8,4,10,-2,9,3,9,-2,4,2,2,1,0,3,4,1,1,3,0,2,-1,3,-3,6,-2,1,-3,6,-6,4,-4,2,-2,0,-2,3,-3,-1,-2,1,-1,-1,-1,-1,1,-1,-1,-1,0,0,1,-2,1,0,1,0,0,1,0,1,0,0,0,-1,-1,1};

const int N=105;
typedef unsigned int uint;

int n,m;
uint pow[N],Ans;

int main(){
  uint tem;
  freopen("t.in","r",stdin);
  freopen("t.out","w",stdout);
  scanf("%d%d",&n,&m);
  pow[0]=1; for (int i=1;i<=n;i++) pow[i]=pow[i-1]*m;
  Ans=m;
  for (int i=1;i<=n/2;i++){
    tem=0;
    for(int j=1;j<=(i<<1);j++)
      tem+=pow[j]*cnt[i][j];
    Ans+=tem;
    if ((i<<1|1)<=n) Ans+=tem*m;
  }
  printf("%u\n",Ans);
  return 0;
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值