Cod sursa(job #2658795)

Utilizator Antonia_onisoruantonia onisoru Antonia_onisoru Data 15 octombrie 2020 09:04:21
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream in("elmaj.in");
ofstream out("elmaj.out");

long long v[1000000];

int main()
{
    long long maj;
    int n, apar, i;
    in>>n>>v[0];

    maj = v[0];
    apar = 1;
    for( i = 1; i < n; i++ ){
        in>>v[i];
        if( apar == 0 ){
            maj = v[i];
        }
        if( maj == v[i] ){
            apar++;
        }
        else{
            apar--;
        }
    }

    apar = 0;

    for( i = 0; i < n; i++ ){
        if( maj == v[i] )
            apar++;
    }
    if( apar >= n / 2 + 1 )
        out<<maj<<" "<<apar;
    else
        out<<"-1";
    return 0;
}