아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

연속하지 않는 합

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

요약
양의 정수를 서로 다른 수의 합으로 나타내되 어떤 두 수도 연속하지 않게 할 때 항의 최대 개수를 구한다.
난이도

보통10점 중 5점

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

문제

양의 정수 nn이 주어진다. 이 수를 양의 정수들의 합으로 나타내려고 한다. 이때 다음 두 조건을 지켜야 한다.

  • 같은 정수를 두 번 이상 쓸 수 없다 (각 정수는 많아야 한 번).
  • 연속한 두 정수를 함께 쓸 수 없다 (예를 들어 33과 44를 동시에 쓸 수 없다).

이 조건을 만족하면서 합을 이루는 항의 개수를 최대로 하고 싶다. 항의 최대 개수를 구하여라.

입력

입력의 첫째 줄이자 유일한 줄에 정수 nn (1≤n≤10181 \le n \le 10^{18})이 주어진다.

출력

조건을 만족하는 분해에서 항의 최대 개수를 정수 하나로 출력한다.

예제3

  1. 예제 1

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

    입력
    4
    
    예상 출력
    2
    
  3. 예제 3

    입력
    9
    
    예상 출력
    3