Cod sursa(job #3216259)

Utilizator Ruxandra009Ruxandra Vasilescu Ruxandra009 Data 15 martie 2024 19:25:28
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>

using namespace std;

ifstream f("elmaj.in");
ofstream g("elmaj.out");

int n, cand, dif = 1, a[1000005];

int main()
{
    f >> n;
    for(int i = 1; i <= n; i ++)
        f >> a[i];

    cand = a[1];
    for(int i = 2; i <= n; i ++)
    {
        if(cand == a[i])
            dif ++;
        else
            dif --;

        if(dif < 0)
            cand = a[i], dif = 1;
    }

    int nr = 0;
    for(int i = 1; i <= n; i ++)
        if(a[i] == cand)
            nr ++;

    if(nr > n / 2)
        g << cand << " " << nr;
    else
        g << -1;
    return 0;
}