Cod sursa(job #1767140)
Utilizator | Data | 28 septembrie 2016 19:10:07 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <iostream>
#include <cstdio>
#include <fstream>
#include <map>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
map<int,int> m;
int n,i,j,x,ans,nr;
int main()
{
fin>>n;
for (i=1; i<=n; i++)
{
fin>>x;
m[x]++;
if (x==ans) nr++;
if (m[x]>n/2)
ans=x,nr=m[x];
}
if (ans)
fout<<ans<<' '<<nr;
else fout<<"-1";
return 0;
}