這個題的其他部分還好解決,關鍵是超時,最後還是未解決
#include<stdio.h>
#include<string.h>
int isno(int n)
{
char s[10];
sprintf(s,'%d',n);
if(strchr(s,'4') || strstr(s,'62'))
return 0;
return 1;
}
int main()
{
long int i,n,m,j,cout,a[1000010];
memset(a,0,sizeof(a));
a[0]=1;
for(i=1;i<1000010;i++)
{
a[i]=a[i-1]+isno(i);
}
while(scanf('%d%d',&n,&m)==2 &&(m||n) )
{
cout=a[m]-a[n];
printf('%d\n',cout);
}
return 0;
}