60pts求调 WA#5#7#8#9
查看原帖
60pts求调 WA#5#7#8#9
1263684
Elysialr楼主2024/11/11 18:49
#include <bits/stdc++.h>
using namespace std;
#define ll __int128_t
#define SIZE 100001

inline ll read(){
	ll x=0,f=1;char ch=getchar();
	while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
	while (ch>='0'&&ch<='9'){x=(x*10+ch-48);ch=getchar();}
	return x*f;
}
inline void write(ll x) {
    ll pointer=0;
    char c[41]={};
    if(!x){putchar('0');putchar('\n');return;}
    if(x < 0){putchar('-');x=-x;}
    while(x){c[++pointer]=x%10+48;x/=10;}
    while(pointer) putchar(c[pointer --]);
    putchar('\n');
}

struct data{
    ll a,b;
};

bool cmp(data f1,data f2){
    return f1.a*f1.b<f2.a*f2.b;
}

ll n,sum,res;
data f[SIZE];

int main(){
    ios::sync_with_stdio(0);
    cin.tie(0),cout.tie(0);

    n=read();
    for(ll i=0;i<=n;i++)
    f[i].a=read(),f[i].b=read();

    sort(f+1,f+n+1,cmp);

    for(ll i=1;i<=n;i++){
        f[i].a*=f[i-1].a;
        res=max(res,f[i-1].a/f[i].b);
    }

    write(res);
    return 0;
}
2024/11/11 18:49
加载中...