Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
46355 | zhangchunhong | 最大值 | C++ | 通过 | 0 MS | 256 KB | 510 | 2024-05-03 10:57:11 |
//4.最大值 #include<bits/stdc++.h> using namespace std; int n,k,w[505],h[505]; bool check(int a){// 二分答案 int cnt=0; for(int i=0;i<n;i++){ cnt+=(w[i]/a)*(h[i]/a); } return (cnt>=k); } int main() { cin>>n; int maxn=0; for(int i=0;i<n;i++){ cin>>w[i]>>h[i]; if(w[i]>maxn) maxn=w[i]; if(h[i]>maxn) maxn=h[i]; } cin>>k; int L=1,R=maxn; while(L+1<R) { int mid=(L+R)/2; if(check(mid)) L=mid; else R=mid; } cout<<L<<endl; return 0; }