1. 程式人生 > >【題解】二人放球

【題解】二人放球

play ace blue include isp hid splay pan ron

題目描述

  校園裏在上活動課,Red和Blue兩位小朋友在玩一種遊戲,他倆在一排N個格子裏,自左到右地輪流放小球,每個格子只能放一個小球。每次Red放1個或2個紅色的小球,Blue放1個或2個藍色的小球,問有多少種可行的排放方案?

  比如:N=4時,有10種可行的排列方案。

輸入輸出格式

輸入格式

  一行,一個整數N。(2<N<40)。

輸出格式

  一行,一個整數M,可行的方案數。

輸入輸出樣例

輸入樣例

3

輸出樣例

6

題解

  易得這是一個類似Febonacci數列的東西,初始化時前兩項乘2即可。

技術分享圖片
#include <iostream>

using
namespace std; int n; int a[43] = {2,2,4}; int main() { cin >> n; for(int i = 3; i <= n; i++) a[i] = a[i - 1] + a[i - 2]; cout << a[n]; return 0; }
參考程序

【題解】二人放球