数位dp
丿残念灬
这个作者很懒,什么都没留下…
展开
-
FZU-2109 Mountain Number(数位dp)
Problem 2109 Mountain Number Accept: 231 Submit: 586Time Limit: 1000 mSec Memory Limit : 32768 KB Problem DescriptionOne integer number x is called "Mountain Number" if:(1) x>0原创 2016-08-24 11:22:20 · 285 阅读 · 0 评论 -
HDU-4352 XHXJ's LIS(数位dp+状压)
B - XHXJ's LIS HDU - 4352 题意:给定一个区间[l,r],问区间内有多少个数满足:它的每一位上的数字所组成的序列的最长上升子序列的长度恰好是k题解:数位dp,考虑到最长上升子序列的O(nlogn)的解法,因为只有0~9共10种数字,可以用状态压缩:二进制下S的第i位如果是1,则表示i已经在子序列里面,如果S中有k个1那么就满足要求。每次更新S时,找到原创 2017-02-07 15:46:15 · 437 阅读 · 0 评论 -
HDU-4734 F(x) (数位dp)
H - F(x) HDU - 4734 题解:数位dp,考虑到T很大,不能每次都清空dp数组一开始想错了,开了3维数组dp[i][tot][sum],表示当前数位是第i位,F(A)=tot,到当前数位为止的F(x)的值,结果超内存了。发现只要改变一下就可以变成2维数组:把加法变成减法,dp[i][sum]中sum=F(A)-F(x),只要sum>=0就满原创 2017-02-08 16:03:22 · 676 阅读 · 0 评论 -
HDU-4507 吉哥系列故事――恨7不成妻 (数位dp)
J - 吉哥系列故事――恨7不成妻 HDU - 4507 题解:数位dp和简单的数位dp不同,这道题要算所有合法数的平方和考虑到一个数可以写成X=ΣAi*Pi,(其中Ai为X每一位的值,Pi=10^i)因为(A+B)^2=A*A+2*A*B+B*B(X1+X2+X3+...+Xn)^2=X1^2+2*X1*(X2+X3+...+Xn)+(X2+X3+..原创 2017-02-08 21:17:00 · 1264 阅读 · 0 评论 -
HDU-6093 Rikka with Number(计数/数位dp)
传送门:HDU-6093题意:如果一个数在某一进制d下所有位是0~d-1的排列,则称这个数为“好数”,问[L,R]之间有多少个“好数”题解:计数/数位dp由于L和R很大(L,R首先可以猜一个结论:每一个数之多只在一个d进制下能形成0~d-1的全排列。其证明也很简单:如果一个数在d进制下是“好数”,那么这个数一定在(d^(d-1),d^d]之间,因此d进制和d-1进制的区间是原创 2017-08-09 19:46:42 · 335 阅读 · 0 评论