Cod sursa(job #2211640)

Utilizator ewaldBerla Ewald ewald Data 11 iunie 2018 11:07:30
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#include <iostream>
#include <fstream>

using namespace std;

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

long long  n;
int c;
int i,nr;
long long a[1000002];

int main()
{
    long long n;
    f>>n;

    for(i=0;i<n;i++)
        f>>a[i];

    int fp = 0;
    int ec = -1;

    for(i=0;i<=n-1;i++)
    {
        if(fp == 0)
        {
            ec=a[i];
            fp=1;
        }
        else
        {
            if( ec == a[i] )
            {
                fp++;
            }
            else
                fp--;

        }

    }
    for(i=0;i<n;i++)
    {
        if( a[i] == ec )
            nr++;
    }

    if( nr >= (n/2)+1 )
        g<<ec<<" "<<nr;
    else
        g<<-1;
}