为何加了一个等号就从AC变成76分?
查看原帖
为何加了一个等号就从AC变成76分?
729895
Meickol楼主2023/9/15 21:50

以下是AC代码

#include<bits/stdc++.h>
using namespace std;
struct node{
    int price,amount;
}p[2000005];
bool cmp(node p1,node p2){
    return p1.price<p2.price;
}
int main(){
    long long sum,n,mark=1,ans=0;
    cin>>sum>>n;
    for(int i=1;i<=n;i++) cin>>p[i].price>>p[i].amount;
    sort(p+1,p+1+n,cmp);
    while(sum>p[mark].amount){
        sum-=p[mark].amount;
        ans+=p[mark].price*p[mark].amount;
        mark++;
    }
    ans+=p[mark].price*sum;
    cout<<ans;
    return 0;
}
2023/9/15 21:50
加载中...