数位dp
文章平均质量分 77
Dale_zero
从零开始吧!
展开
-
hdu 5642
题目链接:hdu 5642模板题,甚至不用判断limit,水过~#include<iostream> #include<cstdio> #include<vector> #include<set> #include<map> #include<string.h> #include<cmath> #include&a原创 2018-03-29 19:54:37 · 215 阅读 · 0 评论 -
Codforces 401D
题目链接:CF 401D本来以为是数位DP的题目,就直接套了模板,但是发现只用二进制来表示相应的位数已经被选过,选择的顺序并不能体现。看了题解发现是想普通的dp那样定义,用dp【i】【j】表示集合i中的点已经被选择,%m结果为j的方案总数。最后dp【1<<(len-1)】【0】就代表符合条件的方案数目#include<iostream> #include<cstdio...原创 2018-03-29 23:43:33 · 202 阅读 · 0 评论 -
hdu 2089 数位dp
题目链接:hdu 2089给两个整数n,m求n到m之间符合给定条件的数条件:6后面不能是2,不能有4数位dp裸题,开一个三维数组,dp【i】【j】【k】表示当前为第i位后面符合条件的数量,j=0:前一位不为6,j=1:前一位是6k=0:本位取值没有限制,可以从0~9,k-1则是本位的值不能超过原数此位的值。这样把状态定义好之后就能进行dp了#include<iostream> #inc...原创 2018-03-21 20:24:48 · 142 阅读 · 0 评论 -
hdu 4507 数位dp
题目链接:hdu 4507数位dp难度中等的一道题,判断的条件有三个,每个数字不为7可以在判断中排除,另外两个需要在递归基中判断维护三个值:从pos位往后符合条件的数的数量num、这些数字的和sum,这些数字的平方和ssum①num可以循环加得②sum需要用用num再乘上一个当前数位所代表的值,即i*10^pos③计算ssum时把sum和i*10^pos拆开完全平方分解(i*10^pos+sum)...原创 2018-03-28 19:51:49 · 474 阅读 · 0 评论 -
hdu 4722
题目链接:hdu 4722数位dp模板题,顺便把模板写出来了#include<iostream> #include<cstdio> #include<vector> #include<set> #include<map> #include<string.h> #include<cmath> #include&原创 2018-03-28 20:31:48 · 196 阅读 · 0 评论 -
hdu 6148
题目链接:hdu 6148数位DP比较简单的一题,然而我还是做了很久别的没有什么,主要就是前导0是需要特殊考虑的一点。若不考虑签到0,会导致010被排除,但其实是合法的。用lead=1来表示前导0的存在,在i==0&&lead==1时,下一步lead为1其他就和正常的数位DP一样了#include<iostream> #include<cstdio> #in...原创 2018-03-29 00:02:53 · 305 阅读 · 0 评论