Cod sursa(job #1853341)

Utilizator xkz01X.K.Z. xkz01 Data 21 ianuarie 2017 18:00:16
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<cstdio>
using namespace std;
int i, a[1000000], elmaj, nr, n;
int main(){
    freopen("elmaj.in","r",stdin);
    freopen("elmaj.out","w",stdout);
    scanf("%d%d", &n, &a[0]); elmaj=a[0]; nr=1;
    for (i=1;i<n;i++) {
        scanf("%d", &a[i]);
        if (a[i]==elmaj) nr++; else {nr--; if (nr==0) {nr=1; elmaj=a[i];}}
    } nr=0;
    for (i=0;i<n;i++) if (a[i]==elmaj) nr++;
    if (nr>=n/2+1) printf("%d %d\n", elmaj, nr); else printf("-1\n");
    return 0;
}