Cod sursa(job #2277373)

Utilizator denmirceaBrasoveanu Mircea denmircea Data 6 noiembrie 2018 08:47:28
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int v[1000003],n,nr,k,c;
int main()
{
  fin>>n;
  c=-1;
  nr=0;
  for(int i=1;i<=n;i++){
    fin>>v[i];
    if(k==0)
    {
        c=v[i];
        k++;
    }
    else if(c==v[i])
        k++;
    else
        k--;
  }
  if(c==-1){
    fout<<-1;
    return 0;
  }
  for(int i=1;i<=n;i++)
    if(v[i]==c)
    nr++;
  if(nr>=n/2+1)
    fout<<c<<" "<<nr;
  else
    fout<<-1;
}