Cod sursa(job #2367752)
Utilizator | Stoichitescu Maria mariast | Data | 5 martie 2019 12:05:09 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<fstream>
using namespace std;
ifstream f ("elmaj.in");
ofstream g ("elmaj.out");
int a[1000100],n,val,k;
int main()
{
f>>n;
f>>a[1];
val=a[1];
k=1;
for(int i=2;i<=n;++i){
f>>a[i];
if(a[i]==val)++k;
else{
if(k==0) val=a[i];
else --k;
}
}
k=0;
for(int i=1;i<=n;++i){
if(a[i]==val)++k;
}
if(k<n/2+1) g<<-1<<'\n';
else g<<val<<" "<<k;
return 0;
}