这题差点把我搞逝
2024-09-16 13:39:31
发布于:云南
5阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int a[1000005],b[1000005],c[1000005];
int main(){
int n; cin >> n;
int cn1 = 0,cn2 = 0,cn3 = 0;
for(int i = 1;i <= n;i++){
cin >> a[i] >> b[i] >> c[i];
if(a[i] == -1) cn1++;
if(b[i] == -1) cn2++;
if(c[i] == -1) cn3++;
}
int l1,l2,l3; cin >> l1 >> l2 >> l3;
l1 -= cn1,l2 -= cn2,l3 -= cn3;
sort(a + 1,a + n + 1);
sort(b + 1,b + n + 1);
sort(c + 1,c + n + 1);
long need = 0;
for(int i = n;i >= 1;i--){
if(a[i] != -1){
if(l1 > 0) l1--;
else need += a[i];
}
if(b[i] != -1){
if(l2 > 0) l2--;
else need += b[i];
}
if(c[i] != -1){
if(l3 > 0) l3--;
else need += c[i];
}
}
cout << need;
return 0;
}
这里空空如也
有帮助,赞一个