Cod sursa(job #2043502)

Utilizator CosaMateiMatei Cosa Gabriel CosaMatei Data 20 octombrie 2017 09:53:02
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <bits/stdc++.h>

using namespace std;

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

int v[1000001];

int main()
{
    int contor = 0, candidat = 0, aparitii = 0,n,i;

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

    for(int i = 0; i < n; i++)
        if(v[i] == candidat)
            aparitii += 1;

    if(aparitii < n / 2 + 1)
        out << "-1";
    else
        out << candidat << " " << aparitii;
    return 0;
}