有大佬帮我看看哪里出了问题
查看原帖
有大佬帮我看看哪里出了问题
913288
3_14楼主2024/6/5 22:07

10分

#include<bits/stdc++.h>
using namespace std;
using ll=long long;
const int MAX=1e4+1;
struct dc{
	int left,right;
}a[MAX];
bool cmp(dc x,dc y){
	return x.left*x.right<y.left*y.right;
}
int n,tA,tB,pre[MAX];
void inii(){
	fill(pre,pre+n+1,1);
	pre[0]=tA;
	for(int i=1;i<=n;i++)
		pre[i]=a[i].left*pre[i-1];
	for(int i=1;i<=n;i++){
		pre[i]=pre[i]-a[i].left+1;
		pre[i]/=a[i].right;
	}	
}
//void cs(){
//	for(int i=1;i<=n;i++)
//    	cout<<a[i].left<<' '<<a[i].right<<'\n';
//	for(int i=1;i<=n;i++)
//		cout<<pre[i]<<' ';
//	cout<<'\n';
//}
int main(){
    cin>>n>>tA>>tB;
    for(int i=1;i<=n;i++)
    	cin>>a[i].left>>a[i].right;
    sort(a+1,a+1+n,cmp);
    inii();
    int ans=INT_MIN;
    for(int i=1;i<=n;i++)
    	ans=max(ans,pre[i]);
	cout<<ans<<'\n';
    return 0;
}
2024/6/5 22:07
加载中...