만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

수열

시간 제한1초메모리 제한512 MB

요약
각 k가 k번째 항의 값만큼 등장하는 단조 비감소 수열의 n번째 항을 구합니다.
난이도

어려움10점 중 9점

유형
수학, 이분 탐색, 동적 계획법
정답자
아직 제출이 없습니다

문제

야시는 최근 학교에서 수열에 대해 배웠습니다. 수열이 무척 마음에 든 야시는 자신만의 길고 독특한 수열을 만들기 시작했습니다. 그가 가장 최근에 고안한 것은 다음 성질을 갖는 비내림차순 자연수 수열 aa입니다: 모든 자연수 kk에 대해, 수열에는 숫자 kk가 정확히 a_ka\_k번 나타납니다. (단, 00은 자연수로 보지 않습니다.) 바꿔 말하면, 각 kk에 대해 a_1,a_2,a_3,…a\_1, a\_2, a\_3, \dots 중에서 정확히 a_ka\_k개가 kk와 같습니다.

야시는 수열의 앞부분 몇 개 항은 직접 적어 냈지만, 종이와 연필만으로는 더 긴 앞부분을 만들어 내기가 어려웠습니다. 야시를 도와주세요.

다음을 수행하는 프로그램을 작성하세요.

  • 표준 입력에서 자연수 nn을 읽고,
  • 수열 aa의 nn번째 항을 구한 뒤,
  • 그 결과를 표준 출력에 출력합니다.

입력

입력은 한 줄로 이루어지며, 찾고자 하는 항의 번호인 자연수 nn (1≤n≤10181 \le n \le 10^{18}) 하나가 주어집니다.

출력

수열의 nn번째 항 a_na\_n을 한 줄에 출력합니다.

힌트

a_5=3a\_5 = 3은 수열 aa에서 숫자 55가 정확히 33번 나타난다는 뜻입니다. 더 구체적으로는 a_9=a_10=a_11=5a\_9 = a\_{10} = a\_{11} = 5입니다.

예제4

  1. 예제 1

    입력
    1
    
    예상 출력
    1
    
  2. 예제 2

    입력
    5
    
    예상 출력
    3
    
  3. 예제 3

    입력
    9
    
    예상 출력
    5
    
  4. 예제 4

    입력
    12
    
    예상 출력
    6