Pagini recente » Cod sursa (job #352049) | Cod sursa (job #2223304) | Cod sursa (job #95102) | Cod sursa (job #545813) | Cod sursa (job #2492716)
#include <stdio.h>
#include <stdlib.h>
FILE *fin , *fout;
int main() {
fin=fopen("nrdivunique.in","r");
fout=fopen("nrdivunique.out","w");
int n,a,b,i,j,d,c,x,y;
fscanf(fin,"%d",&n);
for(i=0;i<n;i++) {
fscanf(fin,"%d%d",&a,&b);
if(b>=2*a) {
fprintf(fout,"%d\n",b);
}
else {
c=0;
d=2000000000;
j=1;
while(j*j<=b && j<=d) {
x=a/j;
if(a%j!=0) {
x++;
}
y=b/j;
if(x<=y) {
c++;
}
if(j+1>x) {
x=j+1;
}
if(d<y) {
y=d;
}
if(x<=y) {
c+=y-x+1;
d=x-1;
}
j++;
}
fprintf(fout,"%d\n",c);
}
}
fclose(fin);
fclose(fout);
return 0;
}