摘要:
部分转自这里题意:用 a 和 b 组成 n位的数字(1 ≤ n ≤ 106) ,如果各位数字之和仍只由 a 和 b 组成,则记为“good number”,问一共有多少个good number? 最终答案对1000000007(109 + 7)取模。分析:假设有k个a,那么b的个数为n-k , 各位数字之和为 s = k*a+(n-k)*b, 如果s为good number,那么一共有 C(n,k)种方法。C(n,k) = n! / k! / (n-k)! ,加,减,乘的运算可以取余,但是除法不能直接取余,a/b%mod = a*reverse(b)%mod; 所以这里要对k! 和 (n-k. 阅读全文
摘要:
题意:N个开关,改变某开关,与此开关相关联的开关也会改变。你的目标是经过若干次开关操作后使得最后N个开关达到一个特定的状态,计算有多少种可以达到指定状态的方法。(不计开关操作的顺序)分析:第i个开关 ai1 *x1+ ai2 *x2+...+ain*xn=bi, 其中当 开关 j 对 开关 i 有影响时,aij= 1,否则aij= 0. 当开关i的状态改变时,bi= 1,否则bi= 0.求自由变元的个数m,方法数为 2^mconst int maxn = 32;int equ, var; // equ个方程 var个变元 增广阵行数为equ 分别为0到equ - 1 列数为var + 1 分. 阅读全文