#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:10240000")
using namespace std;
const int MAXN = 110;
long long t[MAXN];
void pre() {
  t[0] = 1;
  t[1] = 2;
  for (int i = 2; i <= 90; i++) {
    t[i] = t[i - 1] + t[i - 2];
  }
}
int main() {
  long long n;
  pre();
  scanf("%I64d", &n);
  int ans = 0;
  for (int i = 0; i <= 90; i++) {
    if (t[i] <= n) {
      ans = i;
    }
  }
  printf("%d\n", ans);
  return 0;
}
