Cod sursa(job #1600813)

Utilizator ClaudiuManolacheManolache Claudiu ClaudiuManolache Data 15 februarie 2016 14:03:53
Problema Elementul majoritar Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");

int main()
{   int n,i,v[300001],nr=1,maj;
    fin>>n;
    for(i=1;i<=n;i++)
        fin>>v[i];
    for(i=1;i<=n;i++)
       {if(i==1)
           {maj=v[i];
            nr=0;}

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



    return 0;
}