Pagini recente » Cod sursa (job #662454) | Cod sursa (job #689358) | Cod sursa (job #465720) | Cod sursa (job #992559) | Cod sursa (job #1091961)
#include <stdio.h>
using namespace std;
int n, cand = -1, v[1000005], k;
void read ()
{
FILE *fis = fopen ("elmaj.in", "r");
fscanf(fis, "%d", &n);
for (int i = 1; i <= n; i ++ )
{
fscanf(fis, "%d", &v[i]);
if ( k == 0 )
{
cand = v[i];
k = 1;
}
else if ( v[i] == cand )
k ++;
else k --;
}
fclose(fis);
}
void write_verif()
{
FILE *fis2 = fopen ("elmaj.out", "w");
int ok = 0;
int nr = 0;
if ( cand < 0 )
{
ok = 1;
goto x;
}
for (int i = 1; i <= n; i ++ )
if ( v[i] == cand )
nr ++;
if ( nr < n/2+1 )
ok = 1, cand = -1;
x:fprintf(fis2, "%d ", cand);
if ( ok == 0 )
fprintf(fis2, "%d\n", nr);
fclose(fis2);
}
int main()
{
read();
write_verif();
return 0;
}