hdu 3555 Bomb
2014-10-21 10:52
106 查看
http://acm.hdu.edu.cn/showproblem.php?pid=3555
View Code
#include <cstdio> #include <cstring> #include <algorithm> #define ll __int64 using namespace std; ll dp[30][3]; int num[30]; void inti() { memset(dp,0,sizeof(dp)); dp[0][0]=1; dp[0][1]=0; dp[0][2]=0; for(int i=1; i<30; i++) { dp[i][0]=dp[i-1][0]*10-dp[i-1][1]; dp[i][1]=dp[i-1][0]; dp[i][2]=dp[i-1][2]*10+dp[i-1][1]; } } int main() { int t; scanf("%d",&t); inti(); while(t--) { ll n; scanf("%I64d",&n); int cnt=0; while(n) { num[++cnt]=n%10; n=n/10; } num[cnt+1]=0; bool flag=false; ll ans=0; for(int i=cnt; i>=1; i--) { ans+=dp[i-1][2]*num[i]; if(flag) ans+=dp[i-1][0]*num[i]; else if(!flag&&num[i]>4) { ans+=dp[i-1][1]; } if(num[i+1]==4&&num[i]==9) { flag=true; } } if(flag) ans++; printf("%I64d\n",ans); } return 0; }
View Code
相关文章推荐
- HDU 3555 Bomb (数位dp)
- 数位DP——Bomb ( HDU 3555 )
- HDU 3555 Bomb
- HDU - 3555 Bomb(数位dp)
- hdu 3555 Bomb (数位DP)
- HDU - 3555 Bomb (数位DP)
- HDU 3555 Bomb 简单数位DP
- HDU 2089 不要62 && HDU 3555 Bomb (数位DP)
- HDU 3555 Bomb
- hdu 3555 Bomb
- hdu 3555 Bomb 【数位DP】
- HDU 3555 Bomb
- hdu 3555 Bomb
- HDU 3555 Bomb [数位DP]【动态规划】
- hdu 3555 Bomb 经典数位DP
- HDU 3555 Bomb 数位dp
- hdu 3555 Bomb(数位dp)
- HDU-3555-Bomb-数位dp
- HDU 3555 Bomb (数位dp)
- HDU 3555 Bomb