Pagini recente » Cod sursa (job #1408771) | Cod sursa (job #3227204) | Cod sursa (job #805149) | Cod sursa (job #886665) | Cod sursa (job #3138389)
#include <fstream>
using namespace std;
const int NMAX = 1000001;
int N, v[NMAX], cand, nr;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
void citire()
{
in >> N;
for(int i = 1; i <= N; i++)
in >> v[i];
}
void majoritar()
{
cand = -1;
int k = 0;
for(int i = 1; i <= N; i++)
{
if(k == 0)
{
cand = v[i];
k = 1;
}
else
if(v[i] == cand)
k++;
else
k--;
}
if(cand > 0)
{
nr = 0;
for(int i = 1; i <= N; i++)
if(v[i] == cand)
nr++;
}
}
int main()
{
citire();
majoritar();
if(cand == -1)
out << cand;
else
{
if(nr > N / 2)
out << cand <<' ' << nr;
else
out << -1;
}
in.close();
out.close();
return 0;
}