Number of zeros in a given range-
Question link:- No of zeros
#include<iostream>
#include<stdio.h>
using namespace std;
long long int zeros(long long int n){
long long int i=1;
long long int cnt=0;
while(1){
long long int b=n/i;
long long int c=n%i;
long long int a=b/10;
b=b%10;
if(a==0)break;
if(b==0)
cnt+=(a-1)*i+c+1;
else
cnt+=a*i;
i*=10;
}
return cnt;
}
int main(){
int t;
scanf("%d",&t);
while(t--){
long long int a,b;
scanf("%lld%lld",&a,&b);
printf("%lld\n",zeros(b)-zeros(a-1));
}
}
For explanation of algo- click here
No comments:
Post a Comment