数位DP
Fb_by
这个作者很懒,什么都没留下…
展开
-
bzoj1026[SCOI2009]windy数 【数位dp】
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1026 分析:我们可以先预处理出长度为i高位为j有多少个这样的数,也就是dp[i][j]+=dp[i-1][k] (|j-k|>=2)。 然后就是找出0~r有多少个,我们可以知道r的位数Len,先可以把小于Len的直接求出来,单独把Len求出,之后从len-1开始确定每一位找出剩下的。原创 2016-07-13 22:37:54 · 223 阅读 · 0 评论 -
bzoj1799[Ahoi2009]self 同类分布 【数位dp】
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1799 分析:设状态dp[i][j][k],表示长度为i,所有位数和为j,当前模的余数为k,因为所有位的和最大为18*9,所以枚举模数,用记忆化搜索找到最后k==0的数。 代码: #include #include #include #include #include #inclu原创 2016-07-14 15:22:31 · 470 阅读 · 0 评论 -
51nod1623完美消除 【数位dp】
链接:http://www.51nod.com/onlineJudge/submitDetail.html#!judgeId=108709 分析:在枚举每一位观察到 212需要3次,121只要2次,我们可以发现若新枚举的数在前面的一个递增状态没出现过,操作数+1。 比如:前面的状态为“1 2 3 4 5 6” 再加入5时 状态变为“1 2 3 4 5”, 因为后面如果再加入6就会形成“1234原创 2016-07-14 15:30:19 · 288 阅读 · 0 评论