POJ 1745 Divisibility

来源:互联网 发布:白兰氏鸡精的危害 知乎 编辑:程序博客网 时间:2024/05/19 04:05

      首先我们知道(a + b + c +……+ n)% k = a % k + b % k + …… + n % k,这样原来10000的氛围可以减小到100,定义状态f[i][j]表示前i个数字能够出现数字j,状态转移方程:若f[i - 1][j]为真,则f[i][(j - 100 + Digit[i]) % k + 100] = 1;  f[i][(j - 100 - Digit[i]) % k + 100] = 1;最后判断f[n - 1][100]是否为真。注意第一个数字前边不能加符号,所以要单独处理。

程序代码:

 

原创粉丝点击