Cod sursa(job #2527702)
Utilizator | Corvin Ghita corvinus2003 | Data | 20 ianuarie 2020 20:08:42 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.64 kb |
#include <fstream>
using namespace std;
const int LMAX = 1000005;
int n, v[LMAX], c, nrap;
int main()
{
ifstream cin ("elmaj.in");
ofstream cout ("elmaj.out");
cin >> n;
for (int i = 1; i <= n; ++i)
{
cin >> v[i];
if (nrap == 0)
{
c = v[i];
nrap++;
}
else if (v[i] == c)
nrap++;
else nrap--;
}
nrap = 0;
for (int i = 1; i <= n; ++i)
if (v[i] == c)
nrap++;
if (nrap <= n/2)
{
cout << "-1";
return 0;
}
cout << c << ' ' << nrap << '\n';
return 0;
}