cf1874A题解
这道题发现了他们贪心的做法就简单,这里补充一下贪心策略证明。
设
他们的策略为:如果
然后使用归纳法,设
如果交换,设交换了
#include<bits/stdc++.h>
using namespace std;
int t,n,m,k;
int main(){
cin>>t;
while(t--){
cin>>n>>m>>k;
long long ans=0;
int minA=2e9,maxB=0,MAX=0,MIN=2e9;
for(int i=1;i<=n;++i){
int x;cin>>x;
minA=min(minA,x);
MAX=max(MAX,x);
MIN=min(MIN,x);
ans+=x;
}
for(int i=1;i<=m;++i){
int x;cin>>x;
MAX=max(MAX,x);
MIN=min(MIN,x);
maxB=max(maxB,x);
}
k=(k-1)%2+1;
if(k>=1)ans+=max(maxB-minA,0);
if(k>=2){
ans += MIN-MAX;
}
printf("%lld\n",ans);
}
return 0;
}
另外如果在
还有