Cod sursa(job #1293298)

Utilizator alexandra_udristoiuUdristoiu Alexandra Maria alexandra_udristoiu Data 15 decembrie 2014 18:47:29
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include<fstream>
using namespace std;
int n, i, e, nr;
int v[1000001];
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int main(){
    fin>> n;
    for(i = 1; i <= n; i++){
        fin>> v[i];
    }
    e = v[1];
    nr = 1;
    for(i = 2; i <= n; i++){
        if(v[i] == e){
            nr++;
        }
        else{
            nr--;
        }
        if(nr == 0){
            e = v[i];
            nr = 1;
        }
    }
    nr = 0;
    for(i = 1; i <= n; i++){
        if(v[i] == e){
            nr++;
        }
    }
    if(nr >= n / 2 + 1){
        fout<< e <<" "<< nr;
    }
    else{
        fout<< -1;
    }
    return 0;
}