Cod sursa(job #1299588)

Utilizator emanuel_rRamneantu Emanuel emanuel_r Data 23 decembrie 2014 18:52:09
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>
#include <algorithm>
#define NMax 1000005
using namespace std;

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

int N,V[NMax],Sol,Nr,Max;

int main()
{
    fin>>N;
    for(int i=1;i<=N; i++)
        fin>>V[i];
    sort(V+1,V+N+1);

    for(int i=1;i<=N; i++)
        {
        if (V[i]==V[i-1])
            Nr++;
        else
            {
            if(Nr >= (N+1)/2)
                {
                 Sol = V[i-1];
                 Max = Nr;
                }
            Nr = 1;

            }
        }

     if(Nr >= (N+1)/2)
        {
        Sol = V[N];
        Max = Nr;
        }


    fout<<Sol<<" "<<Max<<"\n";

    return 0;
}