1 条题解
-
0
C++ :
#include<iostream> #include<algorithm> using namespace std; const int N = 105; struct food{ int fat,cat; }; food a[2*N]; int b[N]; bool comp(food x,food y){ return x.fat>y.fat; } int main(){ int n,m,k,ans=0; cin>>n>>m>>k; for (int i=1; i<=k; i++) cin>>b[i]; for (int i=1; i<=n; i++) cin>>a[i].fat>>a[i].cat; sort(a+1,a+n+1,comp); for (int i=1,x=1; i<=n && x<=m; i++) if (b[a[i].cat]){ ans+=a[i].fat; b[a[i].cat]--; x++; } cout<<ans<<endl; return 0; }
- 1
信息
- ID
- 3573
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者