Cod sursa(job #1591051)
| Utilizator | Data | 5 februarie 2016 18:52:55 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.63 kb |
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
vector<int>a;
int main()
{
freopen("elmaj.in", "rt", stdin);
freopen("elmaj.out", "wt", stdout);
int N, nrAp=0, s=0, elMaj, el;
scanf("%d", &N);
for(int i=0; i<N; ++i)
{
scanf("%d", &el);
a.push_back(el);
if(s==0)
elMaj=a[i];
if(elMaj==a[i])
s++;
else
s--;
}
for(int i=0; i<a.size(); ++i)
if(a[i]==elMaj)
nrAp++;
if(nrAp > N/2)
cout<<elMaj<<' '<<nrAp<<'\n';
else
cout<<"-1\n";
}
