Cod sursa(job #2128510)
| Utilizator | Data | 11 februarie 2018 19:41:33 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.74 kb |
#include <bits/stdc++.h>
using namespace std;
int v[1000005];
int main()
{
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int n,cnt,ok = -1;
fin >> n;
for (int i = 0;i < n;i++)
fin >> v[i];
sort (v,v + n);
cnt = 1;
for (int i = 1;i < n;i++)
{
if (v[i] != v[i - 1])
{
if (cnt > n / 2)
{
fout << v[i - 1] << " " << cnt;
ok = 1;
break;
}
cnt = 1;
}
else
cnt++;
}
if (cnt > n / 2 && ok == -1)
{
fout << v[n - 1] << " " << cnt;
ok = 1;
}
if (ok == -1)
fout << ok;
return 0;
}
