题目内容:
你需要吃掉 X 个红苹果和 Y 个绿苹果。现在有以下几种苹果:
在吃掉无色苹果之前,你可以将其染成红色或绿色,这样它就会被计入红苹果或绿苹果的数量。你需要选择要吃的苹果,使得吃掉的所有苹果的美味度总和最大。
输入格式
输入包含以下内容:
输出格式
输出一个整数,表示美味度的最大可能总和。
示例1
输入:
1 2 2 2 1
2 4
5 1
3
输出:
12
示例2
输入:
2 2 2 2 2
8 6
9 1
2 1
输出:
25
示例3
输入:
2 2 4 4 4
11 12 13 14
21 22 23 24
1 2 3 4
输出:
74
数据范围
我的代码(马蜂奇怪)
#include<bits/stdc++.h>
using namespace std;
int a[100005],b[100005],c[300005],x,y,na,nb,nc,k=0;
int main(){
cin>>x>>y>>na>>nb>>nc;
for(int i=1;i<=na;i++)cin>>a[i];
for(int i=1;i<=nb;i++)cin>>b[i];
for(int i=1;i<=nc;i++)cin>>c[i];
sort(a+1,a+na+1,greater<int>());
sort(b+1,b+na+1,greater<int>());
for(int i=1;i<=x;i++)c[nc+i]=a[i];
for(int i=1;i<=y;i++)c[nc+x+i]=b[i];
sort(c+1,c+nc+x+y+1,greater<int>());
for(int i=1;i<=x+y;i++)k+=c[i];
cout<<k;
return 0;
}
32分WA求调(玄关)