Cod sursa(job #1262562)

Utilizator tdr_drtTdr Drt tdr_drt Data 13 noiembrie 2014 12:20:18
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>
using namespace std;
ifstream f("elmaj.in"); ofstream g("elmaj.out");
int n, i, nr, k, cand=-1, a[1000001];
int main()
{   f>>n;
    for( i=0;i<n;i++)  f>>a[i];
    for (i = 0; i < n; i++)
    {   if (k == 0) cand = a[i], k = 1;
            else if (a[i] == cand) k++; else k--;
        if (cand < 0) g<<-1;

    }
       for (int i = 0; i < n; i++)
                if (a[i] == cand) nr++;
    if (nr <= n / 2) g<<-1; else g<<cand<<' '<<nr<<endl;
    g.close(); return 0;
}