Cod sursa(job #2488634)
| Utilizator | Data | 7 noiembrie 2019 11:50:56 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.68 kb |
#include <fstream>
#include <vector>
#include <string.h>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int n, m, i, j, v[1000010], ElementMajoritar, Necuplate, nr;
int main(){
fin>>n;
for(i=1; i<=n; i++){
fin>>v[i];
if(Necuplate==0){
ElementMajoritar=v[i];
Necuplate++;
}
if(v[i]==ElementMajoritar){
Necuplate++;
}else{
Necuplate--;
}
}
for(i=1; i<=n; i++){
if(v[i]==ElementMajoritar){
nr++;
}
}
if(nr>n/2){
fout<<ElementMajoritar<<" "<<nr;
}else{
fout<<-1;
}
}
