Pagini recente » Cod sursa (job #113997) | Cod sursa (job #1388371) | Cod sursa (job #19254) | Cod sursa (job #833627) | Cod sursa (job #2321158)
#include <iostream>
#include <fstream>
using namespace std;
int v[3000001];
ifstream f("majoritar.in");
ofstream g("majoritar.out");
/**
Complexitate O(n)(liniara)
*/
int main()
{
int N;
int nr = 0, cand = -1;
f >> N;
for(int i = 1; i <= N; i++)
{
f >> v[i];
if(nr == 0)
{
cand = v[i];
nr = 1;
}
else
if(cand == v[i])
nr++;
else
nr--;
}
//
if(nr > 0)
{
nr = 0;
for(int i = 1; i <= N; i++)
if(v[i] == cand)
nr++;
}
if(nr > N / 2)
g << cand << ' ' << nr;
else
g << -1;
return 0;
}