Cod sursa(job #3205273)

Utilizator Roberthinio7Robert Dragan Roberthinio7 Data 19 februarie 2024 10:01:19
Problema Elementul majoritar Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.97 kb
/******************************************************************************

                              Online C++ Compiler.
               Code, Compile, Run and Debug C++ program online.
Write your code in this editor and press "Run" button to compile and execute it.

*******************************************************************************/

#include <fstream>
using namespace std;
int v[1000001];
int main()
{
    ifstream cin ("elmaj.in");
    ofstream cout("elmaj.out");
    int n,cnt,candidate;
    cin >> n;
    for(int i=0;i<n;i++)
        cin >> v[i];
    cnt=0;
    candidate=-1;
    for(int i=0;i<n;i++){
        if(cnt==0){
            candidate=v[i];
            cnt=1;
        }
        else if(v[i]==candidate)
            cnt++;
        else
            cnt--;
    }
    cnt=0;
    for(int i=0;i<n;i++){
        if(v[i]==candidate)
            cnt++;
    }
    if(cnt>n/2)
        cout << candidate << " " << cnt;
    else
        cout << -1;
    return 0;
}