Cod sursa(job #1331101)

Utilizator Alex008Stanciu Alex Alex008 Data 31 ianuarie 2015 12:31:14
Problema Elementul majoritar Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.15 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
long long a[1000001];
int main()
{
    int n,i,x,y,s=0;
    ifstream fin("elmaj.in");
    ofstream fout("elmaj.out");
    fin>>n;
    for (i=1;i<=n;i++) fin>>a[i];
    x=a[1];
    for (i=2;i<=n;i++)
    {
        if (a[i]==x)y++;
        else y--;
        if (y==0) x=a[i];
    }
    for (i=1;i<=n;i++)
    {
        if (a[i]==x) s++;
    }
    if (s>=(n/2)+1) fout<<x;
    else fout<<"Nope.";















    /*sort (a+1,a+n+1);
    for (i=1;i<n;i++)
    {
        if (a[i]==a[i+1]) s++;
        else if (s>=x) {
                        x=s;
                        c=a[i];
                        s=1;
                      }
    }
    if (x>=n/2) fout<<c;
    else fout<<"Nu exista.";



-----------------------------------------

    for (i=1;i<n;i++)
    {
        s=1;
        for (j=i+1;j<=n;j++)
        {
            if (a[i]==a[j]) s++;
        }
        if (s>=(n/2)+1)
        {
            c=a[i];
            ok=1;
        }
    }
    if (ok==1) fout<<c;
    else fout<<"Nu se poate.";*/
    return 0;
}