Cod sursa(job #2431035)

Utilizator Sho10Andrei Alexandru Sho10 Data 17 iunie 2019 18:27:23
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.89 kb
#include <bits/stdc++.h> //JuniorMonster a.k.a Sho10
#pragma gcc optimize("O3")
#define ll long long
#define all(a) ().begin(), (a).end()
#define sz size
#define f first
#define s second
#define pb push_back
#define er erase
#define in insert
#define mp make_pair
#define pi pair
#define rc(s) return cout<<s,0
#define mod 1000000007
#define PI 3.14159265359
#define CODE_START  ios_base::sync_with_stdio();cin.tie(0);cout.tie(0);
using namespace std;
ll n,x,v[1000005],a,b;
int main(){
    ifstream cin("elmaj.in");
    ofstream cout("elmaj.out");
    cin>>n;
    for(ll i=0;i<n;i++){
     cin>>v[i];
           x=v[i];
    }
a=v[0];
b=1;
for(ll i=1;i<n;i++)
if(v[i]==a){
    b++;
}else {
b--;
b=max(b,0LL);
if(b==0){
    a=v[i];
}
}
ll ans=0;
for(ll i=0;i<n;i++)
if(v[i]==a){
    ans++;
}
if(ans>=n/2+1){
    cout<<a<<' '<<ans;
}else cout<<"-1";
return 0;}