Cod sursa(job #674439)
Utilizator | Alexandru Cristian TheShadows | Data | 6 februarie 2012 11:10:45 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.63 kb |
#include<stdio.h>
#include<algorithm>
using namespace std;
int v[1000000];
int main()
{
int n;
FILE *in=fopen("elmaj.in","r"),*out=fopen("elmaj.out","w");
fscanf(in,"%d",&n);
int i;
for(i=1;i<=n;i++)
fscanf(in,"%d",&v[i]);
sort(v,v+n+1);
int l=0; bool pp=false;
for(i=1;i<=n;i++)
{
l=1;
while(v[i]==v[i+1])
{
i++;
l++;
}
if(l>=n/2+1)
{
fprintf(out,"%d %d\n",v[i],l);
pp=true;
break;
}
}
if(pp==false)
fprintf(out,"-1\n");
return 0;
}