hdu 3709+hdu 3555(数位dp)
2013-04-07 20:50
246 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3709
数位dp...完全看大牛模版理解的。。。。
View Code
PS:记忆化搜索真的很强大啊。。。
数位dp...完全看大牛模版理解的。。。。
View Code
#include<iostream> #include<cstring> using namespace std; __int64 dp[20][20]; int digit[20]; __int64 DFS(int pos,int have,bool doing){ if(pos==-1){ return have; } if(!doing&&dp[pos][have]!=-1){ return dp[pos][have]; } __int64 ans=0; int end=doing?digit[pos]:9; for(int i=0;i<=end;i++){ int nhave=have; if(i==1)nhave=have+1; ans+=DFS(pos-1,nhave,doing&&i==end); } if(!doing){ dp[pos][have]=ans; } return ans; } __int64 solve(__int64 n){ int pos=0; while(n){ digit[pos++]=n%10; n/=10; } return DFS(pos-1,0,1); } int main(){ __int64 n,m; memset(dp,-1,sizeof(dp)); while(~scanf("%I64d%I64d",&n,&m)){ printf("%I64d\n",solve(m)-solve(n-1)); } return 0; }
PS:记忆化搜索真的很强大啊。。。
相关文章推荐
- hdu 3709+hdu 3555(数位dp)
- HDU 3555: Bomb (数位DP)
- Bomb - HDU 3555 数位dp
- Hdu 3709 Balanced Number 数位DP
- hdu--3709--Banlanced-Number--数位DP
- hdu 3555 数位dp的dfs写法
- HDU 3555 Bomb(数位DP)
- HDU 3709 Balanced Number [数位DP]【动态规划】
- hdu 3709 Balanced Number(数位dp)
- HDU 3555 Bomb 简单数位DP
- (数位DP 1.2)hdu 3555 Bomb(统计1~n中,包含49的数的个数)
- Hdu 3555 - Bomb (数位dp)
- HDU 3709 Balanced Number(数位DP)
- HDU-3555 Bomb 数位DP
- hdu 3709 Balanced Number 数位dp
- hdu 3555(数位dp)
- hdu 3555 Bomb (数位DP)
- HDU 3709 Balanced Number (数位dp)
- hdu---(3555)Bomb(数位dp(入门))
- HDU - 3555 Bomb (数位dp)