int main(){
long long n,m;
cin>>n>>m;
for(long long j=1;j<=sqrt(m);++j){
kol+= m/j-(n-1)/j;
}
cout<<kol;
return 0;
}
#include<bits/stdc++.h>
using namespace std;
int main(){
unsigned long long M,N,n,m,kol,sum=0;
cin>>n>>m;
for(unsigned long long i=1;i<m;++i){
M = m - m % i;
N = n + (i - n % i) % i;
unsigned long long sum1;
sum1 = (M - N) / i + 1;
sum+=sum1;
}
cout<<sum+1;
return 0;
}
#include<bits/stdc++.h>
using namespace std;
set <long long> a;
long long kol=0,kl=0;
int main(){
long long n,m;
cin>>n>>m;
for(long long j=1;j<=m;++j){
for(long long i=n;i<=m;i++){
if(i%j==0){
kol++;
}
}
}
cout<<kol;
return 0;
}
int main(){
long long M,N,n,m,kol,sum=0;
cin>>n>>m;
resheto(m); // после этого в b массиве у меня лежат все простые числа от 2 до m
for(int i=0;i<b.size();++i){
M = m - m % b[i];
N = n + (b[i] - n % b[i]) % b[i];
int sum1;
sum1 = (M - N) / b[i] + 1;
sum1=sum1*2;
sum+=sum1;
}
cout<<sum;
return 0;
}