Cod sursa(job #2236047)
| Utilizator | Data | 27 august 2018 22:45:37 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.58 kb |
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
vector<int>v(n);
for(int i=0;i<n;i++)
cin>>v[i];
int winner=v[0],vot=1;
for(int i=1;i<n;i++)
if(v[i]==winner)
vot++;
else
{
if(vot==1)
winner=v[i];
else
vot--;
}
int have=0;
for(int i=0;i<n;i++)
if(v[i]==winner)
have++;
if(have>=n/2+1)
cout<<winner<<" "<<have<<"\n";
else
cout<<"-1\n";
return 0;
}
