Pagini recente » Cod sursa (job #2787368) | Cod sursa (job #1939463) | Cod sursa (job #2715708) | Cod sursa (job #1110205) | Cod sursa (job #1453739)
#include <stdio.h>
#define MAX_NUM 1000000
int elmaj(int v[], int n)
{
int maj = -1, k = 0, i;
for (i = 0; i < n; i++) {
if (k == 0) {
maj = v[i];
k = 1;
}
else if (v[i] == maj) {
k++;
}
else {
k--;
}
}
return maj;
}
int main()
{
FILE *in, *out;
int element[MAX_NUM], n, i, contor, raspuns;
in = fopen("elmaj.in","r");
fscanf(in, "%d", &n);
for (i = 0; i < n; i++) {
fscanf(in, "%d", &element[i]);
}
fclose(in);
raspuns = elmaj(element, n);
for (i = 0; i < n; i++) {
if (element[i] == raspuns) {
contor++;
}
}
out = fopen("elmaj.out", "w");
if (contor > n / 2) {
fprintf(out, "%d %d\n", raspuns, contor);
}
else {
fprintf(out, "-1\n");
}
fclose(out);
return 0;
}