Cod sursa(job #2375645)
Utilizator | Data | 8 martie 2019 11:12:49 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.71 kb |
#include <fstream>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int v[1000001],i,n,smaj,nrap,nap;
int main()
{
fin>>n;
for(i=1; i<=n; i++)
{
fin>>v[i];
if(i==1)
{
smaj=v[i];
nrap=1;
}
else if(v[i]==smaj)
{
nrap++;
}
else if(nrap==1&&v[i]!=smaj)
{
smaj=v[i];
nrap=1;
}
else nrap--;
}
if(nrap==0)
fout<<"-1";
else
{
for(i=1; i<=n; i++)
{
if(v[i]==smaj)
nap++;
}
if(nap<n/2+1)
fout<<"-1";
else fout<<smaj<<" "<<nap;
}
return 0;
}