标签:main 输出 个数 div scanf 交通 log input ios
1 100 0 0Sample Output
80
模板题,不太会
#include<stdio.h> #include<iostream> #include<algorithm> #include<string.h> using namespace std; int a[20]; int dp[20][2]; int dfs(int pos,int pre,int sta,bool limit) { if(pos==-1)return 1; if(!limit&&dp[pos][sta]!=-1)return dp[pos][sta]; int up=limit?a[pos]:9; int temp=0; for(int i=0;i<=up;i++) { if(i==4)continue; if(i==2&&pre==6)continue; temp+=dfs(pos-1,i,i==6,limit&&i==a[pos]); } if(!limit)dp[pos][sta]=temp; return temp; } int solve(int x) { int pos=0; while(x) { a[pos++]=x%10; x/=10; } return dfs(pos-1,-1,0,true); } int main() { int a,b; while(scanf("%d%d",&a,&b)&&(a||b)) { memset(dp,-1,sizeof(dp)); printf("%d\n",solve(b)-solve(a-1)); } return 0; }
标签:main 输出 个数 div scanf 交通 log input ios
原文地址:http://www.cnblogs.com/xzxj/p/7236375.html