Pagini recente » Cod sursa (job #1089834) | Cod sursa (job #1353421) | Cod sursa (job #2826841) | Cod sursa (job #54383) | Cod sursa (job #1108459)
#include <iostream>
#include <fstream>
using namespace std;
unsigned long long v[100001],n,best,nr;
int jos[100001];
unsigned long long i,j;
int main ()
{
FILE *f,*g;
f=fopen("elmaj.in", "r");g=fopen("elmaj.out", "w");
fscanf(f, "%lu", &n);
for (i=1; i<=n; i++) fscanf(f, "%d", &v[i]);
fclose(f);
i=1; j=2;
while (i<=n and j<=n)
{
if (v[i]!=v[j]) jos[i]=jos[j]=1;
while (jos[i] and i<=n) i++;
if (i<=n) while ((jos[j] or v[i]==v[j]) and j<=n) j++;
//fprintf(g, "%d %d\n", i,j);
}
best=v[i];
for (i=1; i<=n; i++) if (v[i]==best) nr++;
if (nr>long(n/2)) fprintf(g, "%lu", best);
else fprintf(g, "-1");
//for (i=1; i<=n; i++) fprintf(g, "%d ", jos[i]);
fclose(g);
return 0;
}