九十分求条
查看原帖
九十分求条
1240139
ptxy2352010111楼主2024/9/15 15:29
#include<bits/stdc++.h>
using namespace std;
long long l[1000100],s[1000100];
int main()
{
	long long n,m;
	cin>>n>>m;
	cin>>l[1]>>s[1];
	for(int i=2;i<=n;i++){
		l[i]=((l[i-1]*37011+10193)%10000)+1;
		s[i]=((s[i-1]*73011+24793)%100)+1;
	}
	long long left=1,right=10000;
	while(left+1!=right){
		long long mid=(left+right)/2;
		long long cnt=0;
		for(int i=1;i<=n;i++){
			cnt+=(l[i]/mid*s[i]);
		}
		if(cnt>=m){
			left=mid;
		}else{
			right=mid;
		}
	}
	cout<<left;
	return 0;
}
2024/9/15 15:29
加载中...