线性dp,毫哥和巨佬的故事Contest (nefu.edu.cn)状态更新方式:用当前状态更新依赖他的状态这道题不容易想到用dp来做 DP的核心思想是用集合来表示一类方案,然后从集合的维度来考虑状态之间的递推关系。 受上述性质启发,状态表示为: f[i][k]表示为当前只需要加上i即可等于x,且模y等于k; 我们可以发现这是一个不重不漏的集合划分方式 则状态的转移方式为 f[i-j][(k*10+j)%y]+=f[i][k]; i: x到0 j: 1到9 k:0到y 初始化为f[x][0]=1; 最终答案为f[0][0];