1 #include<stdio.h> 2 long long f[]= 3 { 4 1, 2, 5, 5 10, 20, 25, 50, 6 100, 125, 200, 250, 500, 7 1000, 1250, 2000,2500, 5000, 8 10000, 12500, 20000, 25000,50000, 9 100000, 125000, 200000,250000, 500000, 10 1000000, 1250000, 2000000, 2500000, 5000000, 11 10000000, 12500000, 20000000, 25000000, 50000000, 12 100000000, 125000000, 200000000, 250000000, 500000000, 13 1000000000, 1250000000, 2000000000 14 }; 15 int main() 16 { 17 long n,j,m,sum; 18 while(scanf("%ld %ld",&n,&m)!=EOF) 19 { 20 sum=0; 21 for(j=0; j<45; j++) 22 { 23 if(f[j]>=n&&f[j]<=m) 24 { 25 sum++; 26 continue; 27 } 28 } 29 printf("%ld\n",sum); 30 } 31 return 0; 32 }
真坑人啊!!!!
#include<iostream> #include<algorithm> #include<cstdio> #include<cstring> long long int a[100]; int main() { long long int n,m,i,j,k,sum; a[0]=1;a[1]=2;a[2]=5,a[3]=25,a[4]=125; k=5; sum=1; for(i=1;i<=10;i++) { a[k++]=sum*10;sum*=10; } sum=10; for(i=1;i<=10;i++) { a[k++]=sum*2;sum*=10; } sum=5; for(i=1;i<=10;i++) { a[k++]=sum*10;sum*=10; } sum=10; for(i=1;i<=10;i++) { a[k++]=sum*25;sum*=10; } sum=10; for(i=1;i<=8;i++) { a[k++]=sum*125;sum*=10; } std::sort(a,a+k); while(scanf("%lld%lld",&n,&m)!=EOF) { int count=0; for(i=0;i<k;i++) { if(a[i]>=n&&a[i]<=m) count++; } printf("%d\n",count); } return 0; }
这是用的循环。。。。