Cod sursa(job #1495836)

Utilizator PaulCbnCiobanu Paul PaulCbn Data 3 octombrie 2015 18:30:02
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>

using namespace std;


int n;
int v[1000001];
int main()
{
    ifstream fin("elmaj.in");
    ofstream fout("elmaj.out");
    fin>>n;
    int nr = 0, elem = -1;

    for(int i = 1; i<=n; i++)
    {
        fin>>v[i];
        if(nr == 0)
        {
            elem = v[i];
            nr=1;
        }
        else if(elem == v[i])
            nr++;
        else
            nr--;
    }
    int verificare = 0;
    for(int i =1 ;i<=n;i++)
        if(v[i] == elem)
            verificare++;
        if(verificare>n/2)
            fout<<elem<<" "<<verificare;
        else
            fout<<"-1";

    return 0;
}