Cod sursa(job #2001085)

Utilizator stefan_creastaStefan Creasta stefan_creasta Data 15 iulie 2017 17:38:59
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <cstdio>
using namespace std;
const int NMAX = 1000005;
int v[NMAX];

int main()
{
    int n, i, nr, k;
    freopen("elmaj.in","r",stdin);
    freopen("elmaj.out","w",stdout);
    scanf("%d", &n);
    for(i = 1;i <= n; ++i) {
        scanf("%d", &v[i]);
    }
    nr = v[1];
    k = 1;
    for(i = 2;i <= n; ++i) {
        if(v[i] == nr) {
            ++k;
        }
        else {
            --k;
        }
        if(k == 0) {
            nr = v[i];
            k = 1;
        }
    }
    k = 0;
    for(i = 1;i <= n; ++i) {
        if(v[i] == nr) {
            ++k;
        }
    }
    printf("%d %d\n", nr, k);
    return 0;
}