Cod sursa(job #2474803)

Utilizator ParutixLungeanu Razvan Parutix Data 15 octombrie 2019 20:41:31
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <bits/stdc++.h>

using namespace std;

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

int N , A[1000001];
int Max , AMax;

void Majoritar(int N ,int A[])
{
    sort(A + 1 , A + N + 1);
    int i = 1 , Cnt = 1;
    while(i <= N)
    {
        int j = i;
        while(j <= N && A[j] == A[j + 1])
        {
            j++;
            Cnt++;
        }
        if(j - i + 1 > N / 2)
        {
            Max = A[i];
            AMax = Cnt;
        }
        Cnt = 1;
        i = j + 1;
    }
}

int main()
{
    int Cnt = 0;
    fin >> N;
    for(int i = 1 ; i <= N ; ++i)
    {
        fin >> A[i];
    }
    Majoritar(N , A);
    fout << Max << " " << AMax;

    return 0;
}