Cod sursa(job #678597)

Utilizator batistaUPB-Oprea-Cosmin-Dumitru batista Data 11 februarie 2012 23:20:24
Problema Elementul majoritar Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include<fstream>
using namespace std;
int n;
int v[1000002],i,maj,nr=0;
int main()
{
	ifstream f("elmaj.in");ofstream g("elmaj.out");
	f>>n;
	for(i=1;i<=n;i++)
      f>>v[i];
	maj=v[1];
	for(i=1;i<=n;i++)
	{
	  if(v[i]==maj && nr )nr++;
	  else {maj=v[i]; nr=1; }
	}
	nr=0;
	for(i=1;i<=n;i++)
	  if(v[i]==maj)nr++;
	if(nr>=n/2+1)g<<maj<<' '<<nr;
	  else g<<-1;
	f.close();g.close();
return 0;}