Pagini recente » Cod sursa (job #1484867) | Cod sursa (job #2701752)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int k, c, n, v[1000009];
inline pair<int, int> elementMajoritar(){
c = -1;
fin>>n;
for( int i = 1; i <= n; ++i ){
fin>>v[i];
if( k == 0 ){
c = v[i];
k = 1;
}
else if( c == v[i] )
k++;
else
k--;
}
int contor = 0;
for( int i = 1; i <= n; ++i )
if( v[i] == c )
contor++;
return {(contor >= n/2+1 ? c : -1), contor};
}
int main(){
auto r = elementMajoritar();
if(r.first == -1)
fout<<-1;
else
fout<<r.first<<" "<<r.second;
return 0;
}