fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int solve(int *arr, int n){
  5. if(n <= 3) return 0;
  6.  
  7. int even[n], odd[n];
  8. int evencnt = 0, oddcnt = 0;
  9.  
  10. for(int i = 0; i < n; i++){
  11. if(i % 2 == 0){
  12. even[evencnt++] = arr[i];
  13. } else {
  14. odd[oddcnt++] = arr[i];
  15. }
  16. }
  17.  
  18. if(evencnt < 2 || oddcnt < 2) return 0;
  19.  
  20. sort(even, even + evencnt); // ascending
  21. sort(odd, odd + oddcnt); // ascending
  22.  
  23. return even[evencnt - 2] + odd[oddcnt-2]; // second largest even + second smallest odd
  24. }
  25.  
  26. int main() {
  27. int n;
  28. cin >> n;
  29. int *arr = new int[n];
  30. for(int i = 0; i < n; i++){
  31. cin >> arr[i];
  32. }
  33.  
  34. cout << solve(arr, n);
  35. return 0;
  36. }
  37.  
Success #stdin #stdout 0.01s 5292KB
stdin
6
3 2 1 7 5 4
stdout
7