Cod sursa(job #2439614)
Utilizator | Alexandra Pricop alexandrapricop | Data | 16 iulie 2019 15:37:12 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 30 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
unsigned long n,sanse=1,maj,nr=0,v[10001];
int main()
{
fin>>n>>v[1]; maj=v[1];
for(int i=2; i<=n; i++){
fin>>v[i];
if(v[i]==maj)
sanse++;
else{
sanse--;
if(sanse<0)
{
maj=v[i];
sanse=1;
}
}
}
for(int i=1; i<=n; i++)
if(v[i]==maj)
nr++;
if(nr>=n/2+1)
fout<<maj<<" "<<nr;
else
fout<<-1;
return 0;
}