#include using namespace std; bool x[10000010]; void sosu(int n, int l) { for (int i = 2; i <= l; i++) { if(!x[i]){ for (int j = 2; i*j <= l; j++) { x[i * j] = true; } } } /*for (int i = 2; i <= l; i++) { if(!x[i]) cout << i << " "; } cout << endl; */ } int main(void) { long long int tmp, N, L, d, round = 0, ans = 1; scanf("%Ld %Ld", &N, &L); sosu(N,L); for (int i = 2; ; i++) { if(!x[i]){ d = i; tmp = (i-1) * (N-1)+N; if(tmp > L+1) break; else tmp = L+1 - tmp + 1; round += tmp; } } printf("%Ld\n", round); //else cout << 0 << endl; return 0; }