#include <bits/stdc++.h> using namespace std; int n,tab[1000004],med,wyn,ile=1,akt; vector <int> v; int main() { scanf("%d",&n); for(int i=0; i<n; i++) { scanf("%d",&tab[i]); } for(int i=0; i<n; i++) { for(int j=i; j<n; j++) { v.push_back(tab[j]); sort(v.begin(),v.end()); if(v.size()%2==0) { med = (v[v.size()/2-1] + v[(v.size()/2)]); akt = med + v.size(); if(akt>wyn) { wyn = akt; ile = 1; } else if(akt==wyn) ile++; } else if(v.size()%2!=0) { med = v[v.size()/2]; // cout<<med<<" "; akt = med*2 + v.size(); if(akt>wyn) { wyn = akt; ile = 1; } else if(akt==wyn) ile++; } } v.clear(); } cout<<wyn<<" "<<ile; return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | #include <bits/stdc++.h> using namespace std; int n,tab[1000004],med,wyn,ile=1,akt; vector <int> v; int main() { scanf("%d",&n); for(int i=0; i<n; i++) { scanf("%d",&tab[i]); } for(int i=0; i<n; i++) { for(int j=i; j<n; j++) { v.push_back(tab[j]); sort(v.begin(),v.end()); if(v.size()%2==0) { med = (v[v.size()/2-1] + v[(v.size()/2)]); akt = med + v.size(); if(akt>wyn) { wyn = akt; ile = 1; } else if(akt==wyn) ile++; } else if(v.size()%2!=0) { med = v[v.size()/2]; // cout<<med<<" "; akt = med*2 + v.size(); if(akt>wyn) { wyn = akt; ile = 1; } else if(akt==wyn) ile++; } } v.clear(); } cout<<wyn<<" "<<ile; return 0; } |