Pagini recente » Cod sursa (job #2298114) | Cod sursa (job #1334472) | Cod sursa (job #972374) | Cod sursa (job #2880302) | Cod sursa (job #2110469)
#include <bits/stdc++.h>
#define NMAX 1000000
using namespace std;
ifstream fi("elmaj.in");
ofstream fo("elmaj.out");
int n, k, nr, rez;
int X[NMAX+5];
void citire(void)
{
fi>>n;
for(int i=1; i<=n; i++)
fi>>X[i];
}
int elmaj(void)
{
int cand=-1;
for(int i=1; i<=n; i++)
{
if(k==0)
{
cand=X[i];
k=1;
}
else
{
if(X[i]==cand)
k++;
else
k--;
}
}
if(cand<0)
return cand;
for(int i=1; i<=n; i++)
if(X[i]==cand)
nr++;
if(nr>n/2)
return cand;
return -1;
}
int main()
{
citire();
rez=elmaj();
fo<<rez<<" "<<nr;
fi.close();
fo.close();
return 0;
}