#include <bits/stdc++.h>
using namespace std;

#define int long long int
#define dbg(x) cerr << "[" << #x << " = " << x << "] ";
template<class T> auto vec( int r, int c, T v ){ return vector<vector<T>>( r, vector<T>( c, v ) ) ; }
template<class T> auto vec(int o1, int o2, int o3, T v){ return vector<vector<vector<T>>>(o1, vector<vector<T>>(o2, vector<T>(o3, v))); }
int power(int x, int n, int m = -1){
    if(m != -1) x %= m;
    int ans = 1;
    while(n > 0){
        if( n & 1 ) {
            ans *= x;
            if(m != -1) ans = ans % m;
        }
        x = x * x;
        if(m != -1) x = x % m;
        n >>= 1;
    }
    return ans;
}
const int mxx = (int)2e6;
// const int mxn = (int)1e5;
int nC2(int &x){
    if(x < 2) return 0;
    else return (x * (x - 1)) / 2;
}


signed main(){
    int L, R; cin >> L >> R;
    vector<int> a(R - L + 1);
    for(int i = L, k = 0; i <= R; i++) {
        a[k++] = i;
    }
    int n = a.size();
    vector<int> cnt(mxx + 1, 0);
    for(int i = 0; i < n; i++){
        cnt[a[i]] += 1;
    }
    vector<int> dp(mxx + 1, 0);
    for(int i = 1; i <= mxx; i++){
        for(int j = i; j <= mxx; j += i){
            dp[i] += cnt[j];
        }
    }
    for(int i = 1; i <= mxx; i++) dp[i] = nC2(dp[i]);
    for(int i = mxx; i >= 1; i--){
        for(int j = 2 * i; j <= mxx; j += i){
            dp[i] -= dp[j];
        }
    }
    int len = (R - L + 1);
    int tot = (len * (len - 1)) / 2;
    for(int i = max(2ll, L); i <= R; i++) {
        tot -= max(0ll, ((R / i) - 1));
        // dbg(R); dbg(i); dbg(R / i); cerr << endl;
    }
    // dbg(tot); cerr << endl;
    int res = (tot - dp[1]);
    // for(int i: a) cerr << i << " "; cerr << endl;
    // dbg(dp[1]); cerr << endl;
    cout << 2*res << "\n";
	return 0;
}
#include <bits/stdc++.h>
using namespace std;

int main(){
	int t;
	int64_t N;
	cin >> t >> N;
	cout << (N*100+t-1)/t+(N-1) << endl;
	return 0;	
}

