Cod sursa(job #2456991)

Utilizator Robert_VRVRobert Vadastreanu Robert_VRV Data 16 septembrie 2019 10:21:18
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
#include <map>

std::ifstream fin("elmaj.in");
std::ofstream fout("elmaj.out");

int main() {

  int n;
  fin >> n;
  int a[1 + n];
  int answer = -1, k = 0;
  for (int i = 0; i < n; i++) {
    fin >> a[i];
    if (k == 0) {
      answer = a[i];
      k = 1;
    } else if (a[i] == answer) {
      k++;
    } else {
      k--;
    }
  }
  int f = 0;
  for (int i = 0; i < n; i++)
    if (a[i] == answer)
      f++;
  if (answer != -1)
    fout << answer << " " << f << '\n';
  else
    fout << "-1\n";

  return 0;
}