신나는 스타트업

길이 t인 문자열을 b개의 조각으로 나눠 각 조각에 "_a/b" 표시를 붙일 때, 모든 메시지 길이가 n 이하가 되는 최소 b를 구한다.

보통5이분 탐색수학구현완전 탐색면접 대비아직 제출이 없습니다시간 제한3초메모리 제한512 MB

문제

앨리스가 만든 메신저에서 메시지 하나는 최대 nn글자까지 보낼 수 있다.

첫 사용자인 캐시는 길이가 tt인 문자열 하나를 보내려고 한다. ttnn보다 크므로 한 번에 보낼 수 없다. 그래서 문자열을 순서대로 bb조각으로 나눈 다음 aa번째 조각을 aa번째 메시지로 보낸다. 조각은 비어 있어도 된다.

메시지를 순서대로 읽을 수 있도록, 캐시는 조각 뒤에 _a/b 형태의 표시를 그대로 붙인다. 여기서 aa는 그 메시지의 번호이고 bb는 전체 메시지 개수이며, 두 수 모두 앞자리 0 없이 십진법으로 적는다. 이 표시도 nn글자 제한에 포함된다. 즉 aa번째 메시지의 길이는 (조각의 길이) + 2 ++\ 2\ + (aa의 자릿수) ++ (bb의 자릿수)이고, 이 값이 nn을 넘으면 안 된다. 조각이 빈 메시지까지 포함해 bb개를 모두 보낸다.

예를 들어 n=7n = 7이고 보낼 문자열이 29글자인 floccinaucinihilipilification이라면 메시지가 최소 20개 필요하다. fl_1/20, oc_2/20, ci_3/20, ..., i_10/20, ..., n_20/20처럼 앞의 아홉 개는 두 글자씩, 뒤의 열한 개는 한 글자씩 담으면 된다.

nntt가 주어질 때 필요한 메시지 개수의 최솟값을 구하라.

입력

첫째 줄에 정수 nntt가 공백으로 구분되어 주어진다. (5n1005 \le n \le 100, n<t106n < t \le 10^6)

nn은 메시지 하나의 최대 길이, tt는 캐시가 보내려는 문자열의 길이다.

출력

캐시가 보내야 하는 메시지 개수의 최솟값을 출력한다. 메시지를 몇 개로 나누어도 문자열을 보낼 수 없으면 -1을 출력한다.