题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4704
求解S(k),把N分成k个数之和,问有多少种方案,这个问题等价于n个皮球分成k堆有多少种方案,套用高中学的隔板法得到公式为C(n-1, k-1)。
此时S(1) + S(2) + … + S(n) = C(n-1, 0) + C(n-1, 1) + … + C(n-1, n-1) = 2^(n-1)。套用费马小定理求解即可。
费马小定理:a^(n-1)≡1 (mod n), n为质数。
推论:x^y≡x^(y%(n-1)) (mod n),n为质数。
1 |
|