#include <stdio.h>
int fib1(int n){
	int a=0,b=1;
	int f=0;
	for(int i=2;i<=n;i++){
		f=a+b;
		a=b;
		b=f;
	}
 return f;	
}
int fib2(int n){
	int a[300];
	a[0]=0;
	a[1]=1;
	for(int i=2;i<=n;i++){
		a[i]=a[i-1]+a[i-2];
	}
return a[n];	
}
int fib3(int n){
if (n==0)
return 0;
else if(n==1)
return 1;
else
return fib3(n-1)+fib3(n-2);
}
int main(void) {
int n;
scanf("%d",&n);
printf("fib1=%d\n",fib1(n));
printf("fib2=%d\n",fib2(n));
printf("fib3=%d\n",fib3(n));	
	return 0;
}