Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
320107 | 林夕佳 | 【C6-7】营养膳食 | C++ | 解答错误 | 10 | 1 MS | 260 KB | 525 | 2025-05-03 15:29:02 |
#include<bits/stdc++.h> using namespace std; struct SB{ int s,l,f; }a[205]; int t[105],sum,c; bool cmp(SB x,SB y){ if(x.s!=y.s){ return x.s>y.s; } return x.f>y.f; } int main(){ int n,m,k; cin>>n>>m>>k; c=1; for(int i=1;i<=k;i++){ cin>>t[i]; } for(int i=1;i<=n;i++){ cin>>a[i].s>>a[i].l; a[i].f=t[a[i].l]; } sort(a+1,a+n+1,cmp); while(m>0){ if(m-a[c].f>=0){ m=m-a[c].f; sum=sum+a[c].s*a[c].f; }else{ sum=sum+a[c].s*m; m=0; } } cout<<sum; return 0; }