Cod sursa(job #716717)

Utilizator KoniacDocea Andrei Koniac Data 19 martie 2012 10:15:48
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<stdio.h>
#include<fstream>

using namespace std;

ifstream f("elmaj.in");
ofstream g("elmaj.out");

int n,k;
int v[1000001];

int main(){
	f>>n;
	for(int i=0;i<n;i++){
		f>>v[i];
	}
	int c=-1;
	for(int i=0;i<n;i++){
		if(k==0){
			c=v[i];
			k=1;
		}
		else{
			if(v[i]==c)k++;
			else k--;
		}
	}
	if(c<0)
		g<<-1;
	int nr=0;
	for(int i=0;i<n;i++)
		if(v[i]==c)
			nr++;
	if(nr>n/2)
		g<<c<<" "<<nr;
	else
		g<<-1;
	
	return 0;
}