Cod sursa(job #2638339)

Utilizator MihaiZ777MihaiZ MihaiZ777 Data 27 iulie 2020 20:44:47
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <iostream>
#include <fstream>
using namespace std;

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

long long v[1000000];

int main() 
{
  int n;
  fin >> n;
  for(int i = 0; i < n; i++)
    fin >> v[i];

  int x = -1;
  int sum = 0;
  for(int i = 0; i < n; i++)
  {
    if(sum == 0)
    {
      x = v[i];
      sum++;
    }     
    else if(x == v[i])
    {
      sum++;
    }   
    else sum--;    
  }  

  sum = 0;
  for(int i = 0; i < n; i++)
  {
    if(x == v[i])
      sum++;
  }

  if(sum >= n / 2)
    fout << x << ' ' << sum;
  else fout << -1;  
  
}