Pagini recente » Cod sursa (job #1181685) | Cod sursa (job #1462302) | Cod sursa (job #496628) | Cod sursa (job #1934840) | Cod sursa (job #1278044)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("elmaj.in");
ofstream g ("elmaj.out");
void element_majoritar (int n, int a[]) {
int cand = -1, k = 0;
for (int i = 0; i < n; i++)
{
if (k == 0)
{
cand = a[i];
k = 1;
}
else
if (a[i] == cand)
{
k++;
}
else
k--;
}
int nr = 0;
for (int i = 0; i < n; i++) {
if (a[i] == cand)
nr++;
}
if (nr > n / 2)
g << cand << " " << nr;
else
g << -1;
}
int main()
{
int x[1000000], n, i;
f >> n;
for (i = 0; i < n; i++)
f >> x[i];
element_majoritar (n, x);
return 0;
}