Cod sursa(job #2075590)

Utilizator mirunafrancescaMiruna mirunafrancesca Data 25 noiembrie 2017 15:47:47
Problema Elementul majoritar Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.98 kb
#include <iostream>
#include <stdio.h>
#include <algorithm>
using namespace std;

int a[1000005];

int main()
{
    freopen("elmaj.in", "r", stdin);
    freopen("elmaj.out", "w", stdout);

    int n, x, fr=0;
    cin>>n;
    for(int i=1; i<=n; i++)
     {
         scanf("%d ",&a[i]);
         if(i==1)
            x=a[1];
         if(a[i]==x)
            fr++;
         else
            fr--;
         if(fr<0)
            x=a[i];
     }

    fr=0;
    for(int i=1; i<=n; i++)
        if(a[i]==x)
            fr++;
    if(fr>=n/2+1)
        cout<<x<<" "<<fr;
    else
        cout<<-1;

    /*sort(a+1,a+n+1);

    for(i=1; i<=n/2; i++)
    {
        if(a[i]==a[n/2+i])
           {
               cout<<a[i]<<" ";
               x=a[i];
               j=n/2+i+1;
               break;
           }
    }

    int cont=n/2+1;
    while(j<=n && a[j]==a[i])
     {
         cont++;
         j++;
     }
    cout<<cont;*/



    return 0;
}