Cod sursa(job #1373871)

Utilizator anaella2010Chiriac Ella anaella2010 Data 4 martie 2015 21:06:04
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>

using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,k,v[1000009];
int main()
{
    f>>n;
    f>>v[1];
    int majoritar=v[1], nr=1;
    for(int i=2;i<=n;++i)
    {
        f>>v[i];
        if(v[i]==majoritar)nr++;
            else
            {
                --nr;
                if (nr==0)
                {
                    majoritar=v[i];
                    nr=1;
                }
            }
    }

    nr=0;
    for (int i=1; i<=n; i++)
        if(v[i]==majoritar)++nr;
    if (nr>=n/2+1) g<< majoritar<< ' ' <<nr<<'\n';
        else g<<-1<<'\n';
    return 0;
}