Cod sursa(job #934745)

Utilizator TheFFOFratila Florin Ovidiu TheFFO Data 31 martie 2013 12:30:20
Problema Elementul majoritar Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <algorithm>
#include <cstdio>
#include <iostream>
using namespace std;
FILE*f=fopen("elmaj.in","r");
FILE*g=fopen("elmaj.out","w");
const int k=2;
int v[1000010];
int main()
{
    int N;
    fscanf(f,"%d",&N);
    for(int i=1;i<=N;i++)
        fscanf(f,"%d",&v[i]);
    sort(v+1,v+N+1);
    int elmaj=v[N/k+1],appear=1,lo;
    for(lo=lower_bound(v+1,v+N+1,elmaj)-v+1;v[lo]==elmaj;appear++,lo++);
    cout<<appear;
    if(appear==N/k+1)
        fprintf(g,"%d %d",elmaj,appear);
    else
        fprintf(g,"-1");
    fclose(f);
    fclose(g);
    return 0;
}