題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4278
題意:粗心的人數數,他在數2--4,7--9時,給漏數了3和8.當然不管3和8出現在個位、十位、百位、、他都是會漏數的。比如299之後,他會直接數到400,而跳過了300.現在告訴你這個以他自己的數數方式數到的數,求他實際上數了多少個數。(嘎嘎,後面有點繞,不過題意很好懂,不懂的,點擊鏈接看啊)。
Code:
#include<stdio.h>
int to[10] = {0,1,2,0,3,4,5,6,0,7};
__int64 n;
__int64 ans;
int main()
{
while(scanf("%I64d",&n)!=EOF && n!=0)
{
int t = 1;
ans = 0;
printf("%I64d: ",n);
while(n)
{
ans += to[n%10] * t;
n /= 10;
t *= 8;
}
printf("%I64d\n",ans);
}
return 0;
}