Большое множество

시간 제한2초메모리 제한1024 MB

요약
원소 n개인 집합 S와 임의의 함수 f: S -> {1,...,m}에 대해, 참인 k-좋은 값의 개수 d로 보장할 수 있는 최대 k*d를 구한다.
난이도

어려움10점 중 8점

유형
수학, 조합론, 그리디, 이분 탐색
정답자
아직 제출이 없습니다

문제

Чего только не творится в Недалеком королевстве. Волшебник Мерлин и рыцарь Артур иногда развлекаются тем, что Мерлин доказывает Артуру, что некоторое множество SS большое. При этом множество такое большое, что Мерлин не может предъявить Артуру все элементы этого множества. Недавно они изобрели отличный способ доказательства: Артур выбирает случайным образом хеш-функцию hh и число yy, а Мерлин предъявляет Артуру s∈Ss \in S, такое что h(s)=yh(s) = y. Они даже прочитали в каком-то древнем манускрипте, что можно строго доказать, что этот метод работает, если должным образом определить понятия <<большого множества>> и <<случайной хеш-функции>>. Но теперь они пошли дальше и придумали двухэтапную схему.

Рассмотрим функцию ff. Будем говорить, что yy является kk-хорошим, если множество S_y=s∈S и f(s)=yS\_y = \\{s \in S\text{ и }f(s)=y\\} содержит хотя бы kk элементов. Если Мерлин докажет, что множество GG значений, которые являются kk-хорошими, содержит хотя бы dd элементов, это означает, что SS имеет размер хотя бы kdkd.

Рассмотрим множество SS, содержащее nn элементов и функцию ff, принимающую целые значения от 1 до mm. Артура заинтересовал худший случай: каково максимальное zz, такое что, какова бы не была функция ff, Мерлин сможет, воспользовавшись описанной схемой, доказать, что в множестве SS хотя бы zz элементов. При этом Мерлин может выбрать kk и dd, но он может доказать Артуру только истинные утверждения про размеры множеств.

Например, пусть n=5n = 5, а m=2m = 2. Тогда Мерлин может доказать, что в SS хотя бы 4 элемента. Действительно, если ff отображает все элементы SS в одно и то же число, то Мерлин доказывает, что хотя бы 1 значение является 5-хорошим. Если ff отображает 1 элемент в одно значение и 4 остальных в другое, то Мерлин доказывает, что хотя бы 1 значение 4-хорошее. Наконец, если ff отображает 2 элемента в одно значение и 3 элемента в другое, то Мерлин доказывает, что 2 элемента являются 2-хорошими. В любом случае Артур убеждается, что в SS содержится хотя бы 4 элемента.

입력

Входной файл содержит два числа: nn и mm (1≤n≤10181 \le n \le 10^{18}, 1≤m≤100,0001 \le m \le 100\\,000).

출력

Выведите одно число zz --- максимальное число, такое что для любой функции f:S→1,…,mf:S \to \\{1,\ldots,m\\} Мерлин может доказать, что хотя бы dd значений являются kk-хорошими для таких dd и kk, что dk≥zdk \ge z.

예제1

  1. 예제 1

    입력
    5 2
    
    예상 출력
    4