Cod sursa(job #2241227)

Utilizator AnDrEeA1915Monea Andreea AnDrEeA1915 Data 15 septembrie 2018 12:50:47
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;

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

int v[1000005];
int main()
{
    int n;
    fin>>n;
    for(int i = 1;i <= n; ++i)
        fin >> v[i];
    int x = v[1] ,nr = 1;
    for(int i = 2;i <= n; ++i)
    {
        if(x != v[i])
            nr--;
        else
            nr++;
        if(nr < 0)
        {
            x = v[i];
            nr=1;
        }
    }
    nr = 0;
    for(int i = 1;i <= n;i++)
    {
        if(v[i] == x)
            nr++;
    }
    if(nr >= n/2+1)
        fout<< x <<" "<< nr;
    else
        fout << "-1";
    return 0;
}