提交时间:2025-03-30 16:21:33

运行 ID: 37440

#include<bits/stdc++.h> using namespace std; int T; long long n,m,ans,maxn; int main(){ cin>>T; while(T--){ maxn=0; ans=1; cin>>n>>m; for(int i=2;i<=m;i++){ long long cnt=0; for(int j=0;j<i;j++){ long long x=(n*j+1)/(i-1),y=(n*j+n+1)/i; if(x*(i-1)<(n*j+1)){ x=x+1; } if(y*i<(n*j+n+1)){ y=y+1; } cnt=cnt+(x+y-1)*(y-1-x+1)/2; //cout<<x<<" "<<y<<endl; } if(cnt>maxn){ maxn=cnt; ans=i; } } cout<<ans<<endl; } return 0; }