Cod sursa(job #1233300)
| Utilizator | Data | 25 septembrie 2014 08:43:33 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Teme Pregatire ACM Unibuc 2013 | Marime | 0.64 kb |
#include <iostream>
#include <fstream>
#include <cmath>
#include <algorithm>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int dick[100000000];
int main()
{
int n,a=1,j,maxy;
fin>>n;
for(int i=1;i<=n;i++)
fin>>dick[i];
sort(dick+1,dick+n+1);
j=1;maxy=0;
for(int i=2;i<=n;i++)
{
if(dick[i]==dick[i-1])
a++;
else a=1;
if(maxy<a)
{
maxy=a;
j=i;
}
}
if(maxy>=n/2+1)
fout<<dick[j]<<" "<<maxy;
else fout<<-1;
fin.close();
fout.close();
return 0;
}
