#include <iostream>
#include "stack.h"

using namespace std;

int fib(int n) {
 Stack <int> s;
 int sum = 0;

 //first "call"
 s.push(n);

 while(!s.isEmpty()) {
   n = s.pop();
   if(n == 0 || n == 1){
     sum+=1;  //do something
     continue;
   }

   //recursive cases
   s.push(n-2);
   s.push(n-1);
 }

 return sum;
}


int main(void) {
 int n;
 START:
 cin >>n;

 cout <<fib(n) << endl;
 goto START;

 return 0;
}