Cod sursa(job #1131873)

Utilizator valentin11cCraciun Valentin-Gabriel valentin11c Data 1 martie 2014 21:29:48
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int a[1000005],n,sol;
void citire()
{
    f>>n;
    for(int i=1;i<=n;i++) f>>a[i];
}
void solve()
{
int em=-1,k=0;
    for(int i=1;i<=n;i++)
    if(k==0)
    {
        em=a[i];
        k=1;
    } else if(a[i]==em) k++; else k--;
    if(em==-1) return;
    for(int i=1;i<=n;i++)
    {
        if(a[i]==em) sol++;
    }
    if(sol>=n/2+1) g<<em<<" "<<sol;else g<<-1;
}
int main()
{
    citire();
    solve();
    return 0;
}