Cod sursa(job #945107)

Utilizator costyrazvyTudor Costin Razvan costyrazvy Data 30 aprilie 2013 15:40:18
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>

using namespace std;
int maj,i,y,nr,a[1000001],n;
int main()
{
    ifstream f("elmaj.in");
    ofstream g("elmaj.out");
    f>>n;
    for (i=1;i<=n;i++) f>>a[i];
    maj=a[1];nr=1;
    for (i=2;i<=n;i++)
       if (maj==a[i]) nr++;
       else
       {
           nr--;
           if (nr<1) {maj=a[i];nr=1;}
       }
    for (i=1;i<=n;i++) if (maj==a[i]) y++;
    if (y>=n/2+1) g<<maj<<" "<<y<<'\n';
    else g<<"-1"<<'\n';
    f.close();
    g.close();
    return 0;
}