#include #define rep(i,s,n) for (int i = (int)(s); i < (int)(n); i++) #define all(v) begin(v),end(v) using namespace std; using ll = long long; bool chmin(auto &a, auto b){ return a > b ? a = b, 1 : 0; } bool chmax(auto &a, auto b){ return a < b ? a = b, 1 : 0; } int main(){ cin.tie(0)->sync_with_stdio(0); int n, m; cin >> n >> m; ll ans = 0; for (int i=1;i<=n;i++){ ll tmp = (ll)m*i; int x=i; while(x>0){ int v=i/x; int y=i/(v+1); int l=min(m,y)+1; int r=min(m,x)+1; tmp -= (ll)v*((ll)r*(r-1)/2-(ll)l*(l-1)/2); x=y; } chmax(ans,tmp); } cout << ans << '\n'; }