![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计数类dp
文章平均质量分 68
看见我请叫我去学习
此人很懒
展开
-
DP(数位专题Ⅶ)
题意: 给定区间[l, r] , 求[l,r]中各位数字之和能整除原数的数的个数。 >> face << Strategy: 显然数位dp, 又是和取模有关,我原本考虑: dp[i][j]→dp[i][j]\todp[i][j]→目前搜到第i个数, 且填的数的和是j, 然后dfs终点特判能不能除尽, 结果状态在原数是100+的时候依旧又重复的情况.题解有个神奇的方法, 枚举...原创 2019-08-07 21:50:11 · 197 阅读 · 0 评论 -
DP(数位专题九)
题意: 给定区间[l,r][l, r][l,r], 求该区间内每个数的数字和 >> face << Strategy: 别忘了取模 状态: dp[i][j]dp[i][j]dp[i][j]目前搜到第i位该数的和为j 目标: $$ 边界: 本题无 合法判断: 条件转移合法判断 attention: 取模 双倍经验: 开longlong @author: jasonleft ...原创 2019-08-09 20:06:37 · 195 阅读 · 0 评论 -
DP(数位进阶二)
题意: 给定区间, 求该区间内满足 说来也巧,位置在 i 的人面前的第 j 堆的石子的数量,刚好是 i 写成 K 进制后的第 j 位。现在方伯伯要玩一个游戏,商场会给方伯伯两个整数 L,R。 方伯伯要把位置在 [L, R] 中的每个人的石子都合并成一堆石子。每次操作,他可以选择一个人面前的两堆石子,将其中的一堆中的某些石子移动到另一堆,代价是移动的石子数量 * 移动的距离。 >&...原创 2019-08-09 19:20:40 · 157 阅读 · 0 评论 -
DP(数位专题五)
题意: 给定右端点r , 求区间[0, r]内 有多少数字满足 能被13整除 含有连续数字’13’ >> face << Strategy: 区间查询显然数位dp, 我先设计dp[i][j]代表搜到第i位, 上一位数字是j所能得到的方案数, 然而, dp[i][j]状态有重复的(难道所有问题的解只有13*13吗), 然后改为状态dp[i][j][k][m]→搜到第i位,...原创 2019-08-07 17:24:23 · 109 阅读 · 0 评论 -
DP(数位专题四)
题意: 给定区间[l, r] 求该区间内 阿拉伯数字[0, 9] 各出现了多少次, >> face << Strategy: 区间查询显然数位dp, 不过这种查询和普通查询不一样, 当前是询问数字出现的次数, 并不是问符合要求的数有多少, 所以这里没有判断条件, 所有的数都要搜, 并且记录一个变量sum, 代表搜到第cur位, 当前要求的digit出现的次数, 这样以后, ...原创 2019-08-07 15:28:55 · 143 阅读 · 0 评论 -
DP(数位专题三)
题意: 好在在他眼里,并不是所有数都是萌的。只有满足“存在长度至少为2的回文子串”的数是萌的——也就是说,101是萌的,因为101本身就是一个回文数;110是萌的,因为包含回文子串11;但是102不是萌的,1201也不是萌的。现在SOL想知道从l到r的所有整数中有多少个萌数。由于答案可能很大,所以只需要输出答案对1000000007(10^9+7)的余数。 >> face <&l...原创 2019-08-07 13:12:57 · 108 阅读 · 0 评论 -
DP(数位专题二)
题意: 不吉利的数字为所有含有4或62的号码。例如: 62315 73418 88914 都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。 你的任务是,对于每次给出的一个牌照区间号,推断出交管局今次又要实际上给多少辆新的士车上牌照了。 >> face << Strategy: 数位dp 状态: dp[i][j]→长度为i中上一位是...原创 2019-08-06 21:06:10 · 106 阅读 · 0 评论 -
DP(数位专题⑧)
题意: 给定区间[l, r], 求在区间内符合下列条件的数的个数 有三个数字连续且相等 8和4不能同时出现 >> face << Strategy: 区间查询显然数位dp, 同前面类似的题一样, dfs一搜就完了 状态: dp[i][j][k][l][m][n][o]→dp[i][j][k][l][m][n][o]\todp[i][j][k][l][m][n][o]→ ...原创 2019-08-08 20:14:50 · 128 阅读 · 0 评论 -
DP(数位进阶)
题意: 给定区间, 求该区间的回文数的个数 >> face << Strategy: 数位dp dfs数位+滚动数组判回文 状态: dp[i][j][k]代表搜到第i位,起点为j(去前导零+回文判断),k=0:不是回文串反之亦然 目标: sum[r]−sum[l−1](sum[i]代表1 i内的所有合法数的个数)sum[r]-sum[l-1](sum[i]代表1~...原创 2019-08-08 18:40:58 · 220 阅读 · 0 评论 -
DP(数位专题一)
题意: 求不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道,在A和B之间,包括A和B,总共有多少个windy数?1<A<B<2e91<A<B<2e91<A<B<2e9 >> face << Strategy: 数位dp 状态: dp[i][...原创 2019-08-06 15:30:58 · 99 阅读 · 0 评论 -
DP(数位专题六)
题意: 给定右端点r , 求 ∏i=1i≤rsum(i) \prod _{i = 1}^{i\leq r}sum(i) i=1∏i≤rsum(i) sum(i)代表,i在二进制表示下有多少个1 即sum(i)=__builtin__popcount(i)sum(i)=\_\_builtin\_\_popcount(i)sum(i)=__builtin__popcount(i) >>...原创 2019-08-07 19:36:59 · 92 阅读 · 0 评论