Cod sursa(job #2205437)

Utilizator daru06Daria Culac daru06 Data 19 mai 2018 10:24:49
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>

using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,i,k,maj,x;
long long a[1000005],elm;
int main()
{
//    f>>n;
//    for(i=1;i<=n;i++){
//        f>>a[i];
//        fr[a[i]]++;
//        if(fr[a[i]]>frmax) {
//            elm=a[i];
//            frmax=fr[a[i]];
//        }
//}
//    g<<elm<<" "<<frmax;
    f>>n;
    for(i=1;i<=n;i++)
        f>>a[i];
    for(i=1;i<=n;i++)
    {
        if(a[i]==maj) k++;
        if(a[i]!=maj) k--;
        if(k<0) {
            maj=a[i];
            k=1;
        }
    }
    for(i=1;i<=n;i++)
        if(a[i]==maj) x++;
   if(x>n/2)
        g<<maj<<" "<<x;
   else
    g<<-1;
    f.close();
    g.close();
    return 0;
}