Cod sursa(job #677160)

Utilizator Cristina94Cristina Ungurean Cristina94 Data 9 februarie 2012 21:33:30
Problema Elementul majoritar Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<iostream>
#include<fstream>
using namespace std;

ifstream f("elmaj.in");
ofstream g("elmaj.out");
int main()
{
	int n, a[100000],i,maj,nr=0;
	f>>n;
	for(i=1;i<=n;i++)
		f>>a[i];
	maj=a[1];
	for(i=1;i<=n;i++)
	{
		if(a[i]==maj)
			nr++;
		else
		{
			nr--;
			if(nr<=0)
				nr=0, maj=a[i];
		}
	}
	nr=0;
	for(i=1;i<=n;i++)
		if(maj==a[i])
			nr++;
	if(nr<n/2+1)
		nr=-1;
	if(nr>0)
		g<<maj<<" "<<nr<<'\n';
	else
		g<<-1;
	return 0;
}