Cod sursa(job #765808)

Utilizator bratualexBratu Alexandru bratualex Data 9 iulie 2012 13:08:10
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <fstream>
using namespace std;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
int sef=0,n,i,x[1000000],j=0,gata;
int main()
{

    //multiset<int> :: iterator it1;
    //multiset<int> :: iterator it2;
    fin>>n;
    for ( i=0;i<n;i++ )
    {
        fin>>x[i];
        if (!j)
        {
            sef=x[i];
            j++;

        }
        else
        {
            if ( sef==x[i] )
                j++;
            else
                j--;
        }
    }
    j=0;
    //gata=0;
    for(i=0;i<n;i++)
        if(sef==x[i])
        {
            j++;
            //if ( j>n/2 )
             //   gata=1;
        }
    if (j>n/2)
        fout<<sef<<" "<<j;
    else
        fout<<-1;
    fin.close();
    fout.close();
    return 0;
}