#include using namespace std; int main() { //O(N log M)解法 int N, M; cin >> N >> M; //S[x] = sum(x mod i) vector S(N+1); S[0] = 0; //増加分を記録する配列。S[i] = S[i-1] + Plus[i] vector Plus(N+1, M); for (int i = 1; i <= M; i++) { for (int j = i; j <= N; j += i) { Plus[j]-=i; //iの倍数であるjに(負の)寄与を与える } } //増加分を用いてSを更新する for (int i = 1; i <= N; i++) S[i] = S[i-1] + Plus[i]; //最大値を求め、出力する long long ans = 0; for (int i = 1; i <= N; i++) ans = max(ans, S[i]); cout << ans << endl; }