Cod sursa(job #643368)

Utilizator proflaurianPanaete Adrian proflaurian Data 3 decembrie 2011 15:50:25
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
using namespace std;



int n,i,x[1000001],m,c,*p;

void read();
int main()
{
    read();
    sort(x,x+n);
    m=x[n/2];
    pair<int*,int*> M=equal_range(x,x+n,m);
    c=M.second-M.first;
    if(c>n/2)  printf("%d %d",m,c);
    else printf("-1\n");
    return 0;
}
void read()
{
    freopen("elmaj.in","rb",stdin);
    freopen("elmaj.out","w",stdout);
    fseek (stdin , 0 , SEEK_END);
    int L = ftell (stdin);
    rewind (stdin);
    char *buffer = new char[L];
    fread (buffer,1,L,stdin);
    n=atoi(strtok(buffer," \n"));
    for(i=0;i<n;i++)x[i]=atoi(strtok(NULL," \n"));
    free (buffer);

}