由于一段时间没写代码了,一些基本的函数不会用了,memset(a,0,sizeof(a));对数组初始化为0;还有头文件# include"string".
再就是运用到打表的方法,来节省时间。
方法;将1到1百万的数遍历一遍有n%10==4或n%100=62的就将a[n]标记为0;没有就标记为1;到时只要将输入的数遍历,看它是否为1,1就加。
代码;#include"iostream"
#include"string"
using namespace std;
int a[1000001];
int main()
{
int n,m,count,i,t,j;
memset(a,0,sizeof(a));
for(i=1;i<=1000000;i++)
{ t=i;
j=0;
while(t)
{
if(t%10==4||t%100==62)
{j=1;break;}
t=t/10;
}
if(j==0)
a[i]=1;
else
a[i]=0;
}
while(cin>>n>>m)
{ count=0;
if(n==0&&m==0)
break;
for(i=n;i<=m;i++)
if(a[i]==1)
count++;
cout<<count<<endl;
}
return 0;
}