数位dp
LLL_yx
这个作者很懒,什么都没留下…
展开
-
数位dp学习整合
基础篇 数位dp是一种计数用的dp,一般就是要统计一个区间[le,ri]内满足一些条件数的个数。所谓数位dp,字面意思就是在数位上进行dp咯。数位还算是比较好听的名字,数位的含义:一个数有个位、十位、百位、千位……数的每一位就是数位啦! 之所以要引入数位的概念完全就是为了dp。数位dp的实质就是换一...转载 2018-07-28 16:40:56 · 305 阅读 · 0 评论 -
HDU - 2089 不要62(数位dp,通过这个最基础的题来随便谈谈数位dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 题目意思:给定区间没有62和4的数有多少个 思路: 数位dp包括数位和dp。数位就是通过把数分解成一位一位的数来分析。那么数位dp的dp用来记忆什么东西呢? 在一个区间中(比如【1,100000】),找没有62和4的数,一个一个检算很显然会有很多重复的部分 (比如【101,110】和【...原创 2018-07-27 18:47:01 · 374 阅读 · 0 评论 -
HDU - 4389 X mod f(x)(数位dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4389 题目意思:区间内找能整除它各位数字之和的数字的个数。 思路:模数的范围就是0-81,直接枚举每个模数然后用dp存起来。 代码: #include <bits/stdc++.h> #define INF 0x3f3f3f3f #define eps 1e-8 #define ...原创 2018-07-28 10:36:19 · 371 阅读 · 0 评论 -
HDU - 3709 Balanced Number(数位dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3709 题目意思:给T组数据,每组数据给出一个x和y,求出[x,y]当中满足以其中一位为平衡点,满足在平衡点的左右两边的力矩大小一致。 思路:因为每个数只可能有一个平衡点,且最大位数为18位,所以枚举每个位置为平衡点,dp记录一下就行了,注意当为0的情况,平衡点就有pos个,所以要减去(pos-1)...原创 2018-07-28 13:34:51 · 168 阅读 · 0 评论