Уполикарпа есть n монет, достоинство i-й монеты равно ai. поликарп хочет распределить монеты по своим карманам, но он не может класть две монеты одинакового достоинства в один и тот же карман.
например, елси у поликарпа есть шесть монет, представленных в виде массива a=[1,2,4,3,3,2], он может распределить их по двум карманам следующим образом: [1,2,,3,4].
поликарп хочет распределить все имеющиеся у него монеты, используя минимально возможное количество карманов. ему сделать это.
входные данные
первая строка входных данных содержит одно целое число n (1≤n≤100) — количество монет.
вторая строка входных данных содержит n целых чисел a1,a2,…,an (1≤ai≤100) — достоинства монет.
выходные данные
выведите одно целое число — минимальное возможное количество карманов, необходимое поликарпу, чтобы распределить все имеющиеся у него монеты таким образом, что никакие две монеты с одинаковым достоинством не лежат в одном и том же кармане.
примеры
входные данные
6
1 2 4 3 3 2
выходные данные
2
входные данные
1
100
выходные данные
1
Объяснение:
Python
input()
a = list(map(int, input().split()))
print(max(a.count(i) for i in a))
C++ 17
#include<bits/stdc++.h>
using namespace std;
main(){
int a[1001],b[10001],n,i,m=0;
cin>>n;
for(i=1;i<=n;i++){
cin>>a[i]; b[a[i]]++;
}
for(i=1;i<=1000;i++){
m=max(m,b[i]);
}
cout<<m;
}