Cod sursa(job #2264353)

Utilizator XDBerryBerindean Razvan XDBerry Data 20 octombrie 2018 08:19:54
Problema Elementul majoritar Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <iostream>
#include <fstream>

using namespace std;


int main()
{
    ofstream out("elmaj.out");
    ifstream in("elmaj.in");
    int n;
    in>>n;
    int i=1 ,e[100000005] ,a[200000005] ,nr ,el;

    for(int j=1 ;j<=n ;j++)
    {
        in>>a[j];
        if(i==1||a[j]==e[i-1])
        {
            e[i]=a[j];
            i++;
        }
        else if(a[j]!=e[i-1])
            i--;

    }
     el=e[i-1];

     for (int i=1;i<=n;i++)
        if(a[i]==el)
            nr++;



    if(nr>=(n/2)+1)
        out<<el<<" "<<nr;
    else
        out<<-1;

    return 0;
}