今天有点高效啊,切数论题都这样喵?
#include<bits/stdc++.h>
using namespace std;
int main() {int n,a,b,c,d,s,m;cin>>n;while(n--){cin>>a>>b>>c>>d; m=min(b,d);for(int i=1;i<=m;i++){i=min(b/(b/i),d/(d/i));//优化,只考虑b/i和d/i值都相等的数中最大的一个if(b/i*i>=a&&d/i*i>=c)s=i;//判断是否符合条件,更新答案}cout<<s<<endl;}return 0;
}
然而
最离谱的是
它是n*sqrt(m)的
啊?100pts?
建议加强数据
不开O2,最慢的点也只跑了650秒,这就有点红温了