dp-数位dp
Nemaleswang
ACM退役狗一只
展开
-
hdoj 2089 不要62
题目链接:不要62题目大意:给你一个区间,问这个区间里面符合条件的个数有多少,条件是不能出现62连号或者出现4题目思路:直接数位dp就好,还不需要判断前导0的情况#include <map> #include <set> #include <queue> #include <stack> #include <cmath> #include <vector> #include <cstdio> #in原创 2017-08-20 11:24:56 · 320 阅读 · 0 评论 -
poj 3252 Round Numbers
题目链接:Round Numbers题目大意:给你一个区间,求这个区间里面数转化成二进制后0的个数大于1的个数有多少个题目思路:直接数位dp,不过在考虑的时候需要考虑这样一种情况,如果有前导0的情况我们需要用一个bool去判断一下有没有前导零的存在,然后去比较0和1的个数差就好了#include <map> #include <set> #include <queue> #include <stac原创 2017-08-20 11:35:36 · 227 阅读 · 0 评论 -
hdoj 3555 Bomb
题目链接:Bomb题目大意:给你一个N,问小于等于这个N的数里面“要49”的数有多少个题目思路:跟不要62类似,数位dp去做就好了#include <map> #include <set> #include <queue> #include <stack> #include <cmath> #include <vector> #include <cstdio> #include <cstring>原创 2017-08-20 15:46:14 · 262 阅读 · 0 评论 -
hdoj 3652 B-number
题目链接:B-number题目大意:给你一个N,问小于等于N的数里面有多少个B-number,B-number的定义是出现13这个子序列并且数位之和为13的倍数题目思路:数位dp,有没有13我们可以直接去判断,最后能不能被13整除我们在dfs里面定义一个余数去算就好了,2代表有13,1代表前一位是1,0代表都不是,这样就不用像其他的数位dp那样去给一个pre去判断了#include <map> #i原创 2017-08-20 15:51:56 · 286 阅读 · 0 评论 -
hdoj 4734 F(x)
题目链接:F(x)题目大意:给你一个A和B现在有这样一个函数Function,他的作用是按位对每一个数算贡献,类似二进制,不过二进制的位是十进制的,比如234,则是2∗22+3∗21+4∗202*2^2+3*2^1+4*2^0,现在我们需要有一个初始的值Function(A),现在要求你去找到0到B之间有多少个数他的Function是不大于初始值的题目思路:数位dp里面去剪枝,我们可以枚举数位然后用原创 2017-08-20 16:39:40 · 295 阅读 · 0 评论 -
hdoj 3709 Beautiful numbers
题目链接:Balanced Number题目大意:给你n和m,问你这个范围里面的平衡数有多少,平衡数是指以某一个数位位对称轴,两边距离乘数位算贡献,如果相等,则位平衡数题目思路:枚举对称轴,数位dp,算距离不取绝对值,小于零剪枝,需要注意的是0,00,000这样的数都不是平衡数,但是数位dp的时候我们枚举进去了,所以需要减去#include <map> #include <set> #include原创 2017-08-20 17:09:25 · 352 阅读 · 0 评论 -
Codeforces Beta Round #51 D - Beautiful numbers
题目链接:Beautifuls numbers题目大意:给一个区间,问这个区间的漂亮数有多少,漂亮数是指这个数能被这个数每一非零数位的数字给整除题目思路:好题,首先我们可以很显然的知道,对于一个数来说,每一位都能整除这个数,那么我们可以知道的是这个数一定是这所有非零整数的lcm值,那么这个时候我们可以把问题简化为求这个数是不是所有数的lcm值,那么我们每次去做数位dp的时候可以很轻松的求出来lcm,原创 2017-08-20 18:01:26 · 304 阅读 · 0 评论 -
hdoj 6156 Palindrome Function
题目链接:Palindrome Function题目大意:给你两个区间【L,R】,【l,r】,然后这两个区间枚举i,j,i为当前数,j为j进制,如果j进制下的i是一个回文数,贡献为j,否则,贡献为1,现在要求你去算出总贡献题目思路:因为是原题,所以直接套上一个数位dp的模板就ok了#include <map> #include <set> #include <queue> #include <sta原创 2017-08-21 20:43:34 · 265 阅读 · 0 评论