Cod sursa(job #958231)

Utilizator radu33Nesiu Radu radu33 Data 7 iunie 2013 11:50:07
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;

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

const int N=1000001;
 
int v[N],n,val;


int elmaj(int &poz)
{int i=0,j;
while (i <= n) 
    {j=i;
          while (j <= n && v[j + 1] == v[i])
              j++;
          if (j-i+1 > n/2) 
              {poz=j-i+1;val=v[i];return v[i];}
          i = j + 1;
    }
    return -1;
}



int main()
{f>>n;
int i,poz=0;
for(i=1;i<=n;++i){
        f>>v[i];
    }

sort ( v+1, v+n+1 );
	
		
		if( elmaj(poz)!=-1 )
g<<val<<" "<<poz;
else 
	g<<-1;

return 0;
}