fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. int t, n, m, k;
  6. cin>>t;
  7. while(t--){
  8. cin>>n>>m>>k;
  9. int a[n], aa[m];
  10. int max1 = INT_MIN, max2 = INT_MIN;
  11. int min1 = INT_MAX, min2 = INT_MAX;
  12. int sum1 = 0, sum2 = 0;
  13. for(int i=0; i<n; i++){
  14. cin>>a[i];
  15. if(max1<a[i]){
  16. max1 = a[i];
  17. }
  18. if(min1>a[i]){
  19. min1 = a[i];
  20. }
  21. sum1+=a[i];
  22. }
  23. for(int i=0; i<m; i++){
  24. cin>>aa[i];
  25. if(max2<aa[i]){
  26. max2 = aa[i];
  27. }
  28. if(min2>aa[i]){
  29. min2 = aa[i];
  30. }
  31. sum2+=aa[i];
  32. }
  33. if(k == 1){
  34. if(min1<=max2){
  35. sum1 += max2;
  36. sum1 -= min1;
  37. }
  38. }else {
  39. if(k%2 == 1){
  40. if(max1<max2){
  41. sum1+=max2;
  42. sum1-= min1<min2? min1: min2;
  43. }
  44. }else{
  45. if(max1>max2){
  46. sum1-=max2;
  47. sum1-= min1<min2? min1: min2;
  48. }
  49. if(min1>min2){
  50. sum1+=min2;
  51. sum1-=min1;
  52. }
  53. }
  54. }
  55. cout<<sum1<<endl;
  56. }
  57.  
  58. return 0;
  59. }
  60.  
Success #stdin #stdout 0.01s 5360KB
stdin
4
2 2 1
1 2
3 4
1 1 10000
1
2
4 5 11037
1 1 4 5
1 9 1 9 8
1 1 1
2
1
stdout
6
1
19
2