#include<stdio.h> struct AC { int x,y; }a[1000004]; int main() { int i,j,k=0;a[125].x=1,a[521].y=1; for(i=0; i<1000003; i++) { int c[3]={0}; if(i%10==5||i%100/10==5||i%1000/100==5||i%10000/1000==5||i%100000/10000==5||i%1000000/100000==5) c[2]=1; if(i%10==2||i%100/10==2||i%1000/100==2||i%10000/1000==2||i%100000/10000==2||i%1000000/100000==2) c[1]=1; if(i%10==1||i%100/10==1||i%1000/100==1||i%10000/1000==1||i%100000/10000==1||i%1000000/100000==1) c[0]=1; if(c[0]&&c[1]&&c[2]) a[i].x=a[i-1].x+1; else a[i].x=a[i-1].x; if(i%1000==521||i%10000/10==521||i%100000/100==521||i%1000000/1000==521) a[i].y=a[i-1].y+1; else a[i].y=a[i-1].y; } while(~scanf("%d %d",&i,&j)) { int m; k++; printf("Case %d:%d %d ",k,a[j].x-a[i-1].x,a[j].y-a[i-1].y); } }
不是我的代码,但是可以参照,
版权声明:本文为博主原创文章,未经博主允许不得转载。