Cod sursa(job #2289550)

Utilizator ZappaManIosif Adrian-Mihai ZappaMan Data 24 noiembrie 2018 19:47:21
Problema Elementul majoritar Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <stdio.h>
#include <unordered_map>

using namespace std;

unordered_map<int, int> m;

int N;

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

   scanf("%d", &N);

   int nr_ap = -1;
   int elm_maj = -1;
   for (int i = 0; i < N; ++i) {
      int val;
      scanf("%d", &val);
      m[val]++;
      if (m[val] >= N / 2 + 1 && m[val] >= nr_ap) {
         nr_ap = m[val];
         elm_maj = val;
      }
   }

   if (nr_ap == -1) {
      printf("-1");
   } else {
      printf("%d %d", elm_maj, nr_ap);
   }

   fclose(stdin);
   fclose(stdout);
   return 0;
}