Cod sursa(job #2227157)

Utilizator vladcainamisirVlad Cainamisir vladcainamisir Data 31 iulie 2018 13:33:38
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include<cstdio>
const int NMAX = 1000000;
long long v[NMAX + 1];
int main()
{
  int n ;
  long long lnr , nr;
  freopen("elmaj.in","r",stdin);
  freopen("elmaj.out","w",stdout);
  scanf("%d",&n);
  scanf("%lld",&lnr);
  int cnt = 1;
  v[1] = lnr;
  for(int i = 2; i <= n ; i ++)
  {
    scanf("%lld",&nr);
    if(nr == lnr)
      cnt ++;
    else
      cnt --;
    if(cnt == 0)
    {
      cnt = 1;
      lnr = nr;
    }
    v[i] = nr;
  }
  cnt = 0;
  for(int i = 1; i <= n ; i ++)
  {
    if(lnr == v[i])
      cnt ++;
  }
  if(cnt > n / 2)
    printf("%lld %d" , lnr , cnt);
  return 0;
}