Cod sursa(job #1723462)

Utilizator NicolaalexandraNicola Alexandra Mihaela Nicolaalexandra Data 30 iunie 2016 18:13:56
Problema Elementul majoritar Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.85 kb
#include <fstream>
#include <algorithm>
#include <cstdio>
using namespace std;

long long n,v[1000001],i,ok,ap;
FILE *fin = fopen ("elmaj.in","r");
FILE *fout = fopen ("elmaj.out","w");
//ifstream fin ("elmaj.in");
//ofstream fout ("elmaj.out");

int main (){

    //fin>>n;
    fscanf (fin, "%lld", &n);
    for (i=1;i<=n;i++){
        //fin>>v[i];
        fscanf (fin, "%lld",&v[i]);
    }
    sort (v+1,v+n+1);
    ap = 1;
    ok = 0;
    for (i=2;i<=n;i++){
        if (v[i] == v[i-1])
            ap++;
        else{
            if (ap >= n/2+1){
                fprintf (fout, "%lld %lld",v[i-1],ap);
                //fout<<v[i-1]<<" "<<ap;
                ok = 1;
                break;
            }

            ap = 1;
        }
    }
    if (ok == 0)
        fprintf (fout,"-1");
        //fout<<-1;

    return 0;
}