裸的数位DP我还不会= =b令f[i][j][k]表示长度为i的数,开头为j,数字k的个数,这个可以预处理出来只要计算[0, b] - [0, a - 1]即可,稍微讨论一下什么的就好了 1 /*****************************************************...
分类:
其他好文 时间:
2015-02-17 10:22:06
阅读次数:
141
膜拜了一下蔡大神。。。。然后突然想起来一些东西然后就填了一个半年多前的坑= =人生第一道自己写的数位DP。。。好吧以前是看题解然后也不知道为什么就过了的>__num,那么当取的数字为num的时候后面的数可以随便取,且每种情况都会额外贡献一个个数(也就是当前位上的这个),所以总个数+=10^(i-1)...
分类:
其他好文 时间:
2014-12-13 23:07:33
阅读次数:
273
题目大意:求[a,b]间所有的整数中0~9每个数字出现了几次
令f[i]为i位数(算前导零)中每个数出现的次数(一定是相同的,所以只记录一个就行了)
有f[i]=f[i-1]*10+10^(i-1)
然后照例十进制拆分
其中计算[0,999...9]的时候要从1~9枚举最高位,然后其余位调用f[i-1]即可
剩余部分已知位直接乘,未知位调用f[i]
#include
#include
...
分类:
其他好文 时间:
2014-10-14 16:35:08
阅读次数:
130
1833: [ZJOI2010]count 数字计数Time Limit:3 SecMemory Limit:64 MBSubmit:1250Solved:574[Submit][Status]Description给定两个正整数a和b,求在[a,b]中的所有整数中,每个数码(digit)各出现了多...
分类:
其他好文 时间:
2014-08-16 18:26:20
阅读次数:
214