Cod sursa(job #1490740)

Utilizator salam1Florin Salam salam1 Data 24 septembrie 2015 03:14:45
Problema Elementul majoritar Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <cstdio>
int n, x;
int majEl, cntMaj;

int main() {
  freopen("elmaj.in", "r", stdin);
  freopen("elmaj.out", "w", stdout);

  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%d", &x);
    if (cntMaj == 0 || x == majEl) {
      cntMaj++;
      majEl = x;
    } else {
      cntMaj--;
    }
  }

  fclose(stdin);
  freopen("elmaj.in", "r", stdin);
  scanf("%d", &n);
  cntMaj = 0;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &x);
    if (x == majEl)
      cntMaj++;
  }

  if (cntMaj >= n / 2 + 1)
    printf("%d %d\n", majEl, cntMaj);
  else
    printf("-1\n");

  return 0;
}