求hack 12pts
查看原帖
求hack 12pts
575655
Chtholly_is_cute楼主2023/4/3 21:23

code:

#include<bits/stdc++.h>
using namespace std;
int h[1500],w[1500],n,k,ku;
bool check(int l){
	int cnt=0;
	for(int i=0;i<n;i++){
		cnt+=(h[i]/l)*(w[i]/l);
	}
	ku=cnt;
	if(cnt>=k)return 1;
	else return 0;
}
int main(){
	cin>>n>>k;
	for(int i=0;i<n;i++){
		cin>>h[i]>>w[i];
	}
	int l=1,r=min((*min_element(h,h+n)),(*min_element(w,w+n))),mid;
	int ans;

	while(l<=r){
		mid=(l+r)/2;
	//	cout<<mid<<" ";
		if(check(mid)){
			ans=mid;l=mid+1;
		//	cout<<ans<<" "<<ku<<endl;
		}
		else r=mid-1;
	}
	cout<<ans<<endl;
	return 0;
}

AC #2

2023/4/3 21:23
加载中...