Cod sursa(job #793564)

Utilizator FlorianFlorian Marcu Florian Data 3 octombrie 2012 15:36:13
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
// elmaj.cpp : Defines the entry point for the console application.
//

//#include "stdafx.h"
#include<fstream>
#include<iostream>
using namespace std;
const int MAX_N = 1000007;
int A[MAX_N], e = -1, cnt;
int main()
{
	ifstream in("elmaj.in"); ofstream out("elmaj.out");
	int N;
	in >> N >> A[0];
	e = A[0]; cnt = 1;
	for(int i = 1; i < N; ++i)
	{
		in >> A[i];
		if(e == A[i]) ++cnt;
		else if(cnt > 0) --cnt;
		else e = A[i], cnt = 1;
	}
	cnt = 0;
	for(int i = 0; i < N; ++i)
		cnt += (A[i] == e);
	if(cnt >= N/2+1) out << e << " " << cnt;
	else out << "-1";
	return 0;
}