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

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

피보나치 자릿수

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

요약
1, 2, 3, ...을 피보나치 수 체계로 이어 붙인 무한 문자열의 앞 N개 문자 안에 부분 문자열 "11"이 몇 번 나타나는지 센다.
난이도

어려움10점 중 9점

유형
수학, 동적 계획법, 조합론, 문자열 매칭
정답자
아직 제출이 없습니다

문제

Вася --- юный математик. Недавно на занятиях он узнал про числа Фибоначчи.

Числа Фибоначчи --- это последовательность целых чисел, заданная рекуррентным соотношением: F_0=1F\_0 = 1, F_1=1F\_1 = 1, F_n=F_n−1+F_n−2F\_n = F\_{n - 1} + F\_{n - 2}, n≥2n \ge 2.

Сегодня в математическом журнале он прочитал, что каждое натуральное число представимо в системе счисления Фибоначчи. Число MM в фибоначчиевой системе счисления представляется последовательностью битов a_k…a_1‾\overline{a\_k \ldots a\_1} (a_i∈{0,1}a\_i \in \lbrace 0, 1\rbrace), такой что M=a_k⋅F_k+…+a_1⋅F_1M = a\_k \cdot F\_k + \ldots + a\_1 \cdot F\_1. Заметим, что число в таком виде представляется не единственным способом, поэтому среди всех последовательностей выберем самую длинную, а среди всех самых длинных выберем лексикографически наибольшую. Например, 5=1000_F5 = 1000\_F, 7=1010_F7 = 1010\_F, 2=10_F2 = 10\_F.

Напомним, что последовательность a_1…a_ka\_1 \ldots a\_k лексикографически больше последовательности b_1…b_lb\_1 \ldots b\_l, если существует такое i≤min{k,l}i \le min\lbrace k, l \rbrace, что a_j=b_ja\_j = b\_j, если j<ij < i, и a_i>b_ia\_i > b\_i.

Пусть SS --- это строка из последовательно записанных натуральных чисел в фибоначчиевой системе счисления. S=1101001011000100110101000010001…S = 1101001011000100110101000010001 \ldots После прочтения Васю заинтересовал вопрос: часто ли в строке SS встречаются две единицы подряд?

Вам задано число NN, требуется найти количество вхождений строки <<1111>> в префикс длины NN строки SS.

입력

Входной файл содержит единственное целое число NN (1≤N≤10181 \le N \le 10^{18})

출력

В выходной файл выведите одно целое число: ответ на задачу.

예제4

  1. 예제 1

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

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

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

    입력
    2
    
    예상 출력
    1