Cod sursa(job #3239767)

Utilizator alexalghisiAlghisi Alessandro Paolo alexalghisi Data 7 august 2024 15:15:46
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>

using namespace std;
ifstream F("elmaj.in");
ofstream G("elmaj.out");
#define Z 2048
int a[1000000], i, n, j, k, l, p = Z;
char s[Z];
inline char A() {
    if (p == Z) F.read(s, Z), p = 0;
    return s[p++];
}
int B() {
    int n = 0;
    char c;
    for (c = A(); isdigit(c); n = n * 10 + c - 48, c = A());
    return n;
}
int main() {
    for (n = B(); i < n; a[i] = B(), !k ? k = 1, j = a[i] : j == a[i] ? ++k : --k, ++i);
    for (i = 0; i < n; l += a[i++] == j);
    return l > n / 2 ? G << j << ' ' << l : G << -1, 0;
}