Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
332812 | 田钰皓 | 【C6-7】营养膳食 | C++ | 解答错误 | 0 | 2 MS | 252 KB | 544 | 2025-07-15 14:26:43 |
#include<bits/stdc++.h> using namespace std; struct joker{ int ai,bi; }a[210]; bool cmp1(joker x,joker y){ if(x.bi!=y.bi){ return x.bi<y.bi; }else{ return x.ai>y.ai; } } int s[110]; int main(){ int n,m,k; cin>>n>>m>>k; for(int i=1;i<=k;i++){ cin>>s[i]; } for(int i=1;i<=n;i++){ cin>>a[i].ai>>a[i].bi; } sort(a+1,a+n+1,cmp1); int cnt=0,sum=0; for(int i=1;i<=n;i++){ if(m==0){ break; } if(s[a[i].bi]&&m){ m--; sum+=a[i].ai; s[a[i].bi]--; } } cout<<sum; return 0; }