Cod sursa(job #1755113)
| Utilizator | Data | 9 septembrie 2016 14:32:50 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
vector<int> a;
int b[1000002],n,maxp,maxv,maxc=-(2e9);
int main(){
freopen("elmaj.in", "r", stdin);
freopen("elmaj.out", "w", stdout);
int e,x;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&x);
e=find(a.begin(),a.end(),x) - a.begin();
if(e==i-1){
a.push_back(x);
e=a.size()-1;
}
b[e]++;
if(b[e]>maxc){
maxc=b[e];
maxv=x;
maxp=e;
}
}
printf("%d %d",maxv,b[maxp]);
}
