Pagini recente » Cod sursa (job #2057007) | Cod sursa (job #1973591) | Monitorul de evaluare | Cod sursa (job #2113846) | Cod sursa (job #1105418)
#include <fstream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int N,nr,ok,A[1000001];
int Element_Majoritar()
{
int el_m = 0, k = 0;
for(int i=1; i<=N; i++)
{
if(k == 0)
el_m = A[i], k = 1;
else if(el_m == A[i])
k++;
else
k--;
}
for(int i=1; i<=N; i++)
{
if(A[i] == el_m)
nr++;
}
if(nr > N/2)
g << el_m << '\n';
else
g << -1 << '\n';
}
int main()
{
f >> N;
for(int i=1; i<=N; i++)
f >> A[i];
Element_Majoritar();
g.close();
return 0;
}