数位dp
ivancr
这个作者很懒,什么都没留下…
展开
-
数位dp模版
int dfs(int i, int s, bool e) { if (i==-1) return s==target_s; if (!e && ~f[i][s]) return f[i][s]; int res = 0; int u = e?num[i]:9; for (int d = first?1:0; d <= u; ++d) res转载 2015-10-25 20:04:16 · 210 阅读 · 0 评论 -
HDU 3652
题意:找出区间内数中含有13的并且能被13整除的数的个数 分析:dp(i,j,k)表示i位数,余数为j;k = 0,不含13;k = 1,,不含13且末位为1;k = 2,含13原创 2015-10-25 20:10:59 · 342 阅读 · 0 评论 -
hdoj_2089 【数位dp入门】
题意:就是统计区间内没有4和62的数的个数 分析:dp(i,0)表示i位数不存在不吉利数的个数,dp(i,1)表示i位数不存在不吉利数并且最高位为2的个数,dp(i,2)表示i位数存在不吉利数的个数 首先对dp数组进行一个预处理,处理出i位数出现上述情况的个数,统计的时候都有统计前缀0 dp(i,0) = dp(i-1,0)*9-dp(i-1,1) 前原创 2015-10-25 15:18:03 · 296 阅读 · 0 评论