![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数位dp
鲜果维他命
Don't be a programmer,to be a problem solver
展开
-
好朋友---数位dp
题目链接:https://ac.nowcoder.com/acm/problem/19327题目大意:给你一个t,t次询问,每一次询问给你一个L,R,然后[L,R]中满足包含007(可以不连续),不含前导0的数字个数,把t次询问的结果异或起来就是答案分析:这道题也相对不是很难,但是有一个细节需要注意,怎么样去设置dp数组,以及维数的含义非常重要,这样可以避免重复的初始化而节省时间不超时,我们设置dp数组为dp[pos][num][pre][res],pos表示当前位,num表示以及组成了007中原创 2021-04-27 20:43:05 · 79 阅读 · 0 评论 -
WINDY数----数位dp
题目链接:https://ac.nowcoder.com/acm/problem/20268题目描述windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。windy想知道, 在A和B之间,包括A和B,总共有多少个windy数?分析:这道数位dp相对简单,只要求相邻两位数字的差必须大于等于2,所以限制条件较少,我们直接设定dp数组为dp[pos][pre][ok],pos代表枚举到了哪一位,pre表示当前位前面的一位数字,ok代表是否满足要求.,但是这道题原创 2021-04-27 19:48:37 · 170 阅读 · 0 评论 -
手机号码---数位dp
题目链接:https://ac.nowcoder.com/acm/problem/19945题目描述人们选择手机号码时都希望号码好记、吉利。比如号码中含有几位相邻的相同数字、不含谐音不吉利的数字等。手机运营商在发行新号码时也会考虑这些因素,从号段中选取含有某些特征的号 码单独出售。为了便于前期规划,运营商希望开发一个工具来自动统计号段中满足特征的号码数 量。工具需要检测的号码特征有两个:号码中要出现至少3个相邻的相同数字,号码中不能同时出现8和4。号码必须同时包含两个特征才满足条件。满足条件的号码例如原创 2021-04-26 21:19:45 · 189 阅读 · 0 评论 -
Beautiful Numbers---数位dp
题目链接:https://ac.nowcoder.com/acm/problem/17385题目大意:给你一个N,问你[1,N]有多少个数,满足这个数的数位和能够整除这个数本身.分析:刚开始我定义的dp数组为dp[pos][num][sum];//pos代表枚举到了第几位,num代表当前位数和,sum代表当前数的大小,但是我发现sum会很大这个数组根本开不下,于是就改了想法,去枚举模数,因为模数是位数之和,而N最大1e12,所以模数最大为12*9=108,设置dp数组为dp[pos][now][nu原创 2021-04-26 20:03:39 · 98 阅读 · 0 评论 -
牛客 明七暗七----数位dp
题目链接:https://ac.nowcoder.com/acm/problem/17867题目描述:今天是个特殊的日子,CSL和他的小伙伴们围坐在一张桌子上玩起了明七暗七的游戏。游戏规则是这样的:一个人报出一个起始数,接下来按照逆时针的顺序轮流报数,如果碰到数是7的倍数或含有7,则拍手,下一个人接着报数。直到有一个人报错了数字或者没有及时拍手为止。玩游戏嘛,当然得有惩罚。这么简单的游戏对CSL的学霸小伙伴而言实在是太无脑了,轻轻松松数到上万根本不在话下。但是对于数学是体育老师教的CSL来说,实在是原创 2021-04-21 21:15:09 · 587 阅读 · 0 评论