Cod sursa(job #2519142)

Utilizator Amelia_MilcuMilcu Amelia Amelia_Milcu Data 7 ianuarie 2020 12:45:31
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int n,i,v[1000005],l=0,elmaj,nr=0;
int main()
{
    fin>>n;
    for(i=1;i<=n;i++)
        fin>>v[i];
    sort(v+1,v+n+1);
    elmaj=v[1];
    l=1;
    for(i=2;i<=n;i++)
    {
        if(v[i]==elmaj)
            l++;
        else
        {
            l--;
            if(l<0)
            {
                elmaj=v[i];
                l=1;
            }

        }
    }
    for(i=1;i<=n;i++)
        if(v[i]==elmaj)
            nr++;
    if(nr>n/2)
        fout<<elmaj<<" "<<nr;
    else
        fout<<"-1";
    return 0;
}