#include using namespace std; typedef long long LL; int main() { // 1. 入力情報取得. LL N; cin >> N; // 2. Nマスに行く方法は? // iマスに行く方法が, dp[i]通りだったとすると, // (i + 1)マスに行く方法は, // dp[i + 1] = dp[i](iマスから, 1進む) + dp[i - 1]((i - 1)マスから, 2進む) 通りのはず. LL dp[N + 1]; for(int i = 0; i < N + 1; i++) dp[i] = 0; dp[0] = dp[1] = 1; for(int i = 2; i < N + 1; i++) dp[i] = dp[i - 1] + dp[i - 2]; // 3. 後処理. cout << dp[N] << endl; return 0; }