BinaryCode 模拟
题意是:定义串P,Q,其中Q[i]=P[i-1]+P[i]+P[i+1],边界取0,并且P必须是01串。现在给你Q,让你求出P。
做法是:枚举第一位是1还是0,然后就可以推到出P[i]=Q[i-1]-P[i-1]-P[i-2],需要注意一下边界就好。
Lottery 组合数学
题意是:给你四种买彩票,将他们的中奖概率排序,这四种彩票都是从1到a中取b个数字,第一种是随便取,第二种是选取的必须是有序的,第三种是选取的必须是不同的,第四种是选取的必须是有序且不同的。
做法是:
对于第一种,答案就是a^b。
对于第二种,令dp[i][j]表示第i个取了数字j,转移就是dp[i][j]=sum{dp[i-1][k] | k<=j),答案就是sum{dp[b][j] | 1<=j<=a}。
对于第三种,答案就是A(a,b)
对于第四种,答案就是C(a,b)