- #include<stdio.h>
- #include<math.h>
- unsigned long zero(unsigned long numf,unsigned long numb,unsigned long ten,unsigned long num){
- unsigned long temp,an=0;
- if(numf<10){
- /*printf("%d %d %d %d\n",numf,numb,ten,num);
- printf("fnumb:%d\n",floor(numb/10)) ;*/
- if(floor(numb/(ten))==0)
- an=(numf-1)*ten+numb+1;
- else
- an=numf*ten;
- /*printf("an:%d\n",an);*/
- return an;}
- else{
- /*printf("*-%d %d %d %d-*\n",numf,numb,ten,num);*/
- if(floor(numb/ten)==0)
- an=(numf-1)*ten+numb+1;
- else
- an=numf*ten;
- numb+=(numf%10)*ten*10;
- numf=(unsigned long)floor(num/(ten*100));
- /*printf("*-an:%d\n",an);*/
- return an+zero(numf,numb,ten*10,num);
- }
- }
- int main(){
- unsigned long m,n;
- /*while(1) {
- scanf("%d",&n);
- printf("zero(n):%d",zero((unsigned long)floor(n/10),n%10,1,n)); }*/
- while(1){
- scanf("%d %d",&m,&n);
- /*m--;
- if(m==0)printf("%d\n",zero((unsigned long)floor(n/10),n%10,1,n)+1);
- else{printf("%d--\n",(unsigned long)floor(m/10));
- printf("%d\n",zero((unsigned long)floor(n/10),n%10,1,n)-zero((unsigned long)floor(m/10),m%10,1,m));
- }*/
- m--;
- printf("%d\n", zero(n/10, n%10, 1, n) - zero(m/10, m%10, 1, m));
- }
- return 0;
- }
Raw Paste