求助!!!!错了第13个测试点
查看原帖
求助!!!!错了第13个测试点
661913
liwenxi1145144444楼主2023/4/5 15:02
#include<bits/stdc++.h>
using namespace std;
long long n,m,k;
bool judge(long long x){
	if(x<2){
		return false;
	}
	for(long long i=2;i<=sqrt(x);i++){
		if(x%i==0){
			return false;
		}
	}
	return true;
}
int main(){
	cin>>n>>m>>k;
	long long l=1,r=n*m;
	while(l<=r){
		long long mid=(l+r)/2;
		long long sum=0;
		for(long long i=1;i<=n;i++){
			sum+=min(mid/i,m);
		}
		if(sum==k&&(mid<=n||mid<=m||judge(mid))){
			cout<<mid;
			return 0;
		}else{
			if(sum<k){
				l=mid+1;
			}else{
				r=mid-1;
			}
		}
	}
	cout<<l;
	return 0;
} 
2023/4/5 15:02
加载中...