求助大佬2 3 5 6 8超时了
查看原帖
求助大佬2 3 5 6 8超时了
1125841
abundan楼主2023/12/18 20:06
#include <bits/stdc++.h>
using namespace std;
int N,K;
int a[100000][2];
bool match(int n){
	int k=0;
	for(int i=0;i<N;i++){
		k+=(a[i][0]/n)*(a[i][1]/n);
	}
	if(k>=K)return true;
	else return false;
}

int main() 
{
	scanf("%d %d",&N,&K);
	for(int i=0;i<N;i++){
		for(int j=0;j<2;j++){
			scanf("%d",&a[i][j]);
		}
	}
	int left=0,right=1000000,mid;
	while(left<right){
		mid=(left+right)/2;
		if(match(mid))
		left=mid;
		else
		right=mid-1;
	}
	printf("%d",left);
	return 0;
}
2023/12/18 20:06
加载中...