995!!!!!!!
查看原帖
995!!!!!!!
1353733
XDuanZai楼主2024/11/23 21:14

40pts,995!!!!!!!!!!!!!!!!!!

#include<iostream>
using namespace std;
int a[100005],b[100005];
int main(){
    int n,m,k,ki[105];
    cin>>n>>m>>k;
    for(int i=1;i<=k;i++) cin>>ki[i];
    for(int i=1;i<=n;i++) cin>>a[i]>>b[i];
    for(int i=n-1;i>=1;i--){
        bool pd=false;
        for(int j=1;j<=i;j++){
            if(a[j]<a[j+1]){
                pd=true;
                swap(a[j],a[j+1]);
                swap(b[j],b[j+1]);
            }
            if(pd==false) break; 
        }
    }
    
    int ans=0;
    for(int i=1;i<=n;i++){
        int sum=ki[b[i]];
        if(sum>0&&m>0){
            m--;
            sum--;
            ans+=a[i];
        }
    }
    cout<<ans;
    return 0;
}
2024/11/23 21:14
加载中...