WUST Online Judge - 1188: 零起点学算法95——骨牌铺方格

1188: 零起点学算法95——骨牌铺方格

Time Limit: 1 Sec  Memory Limit: 32 MB   64bit IO Format: %lld
Submitted: 1003  Accepted: 409
[Submit][Status][Web Board]

Description

在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数.
例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图:

Input

输入数据由多行组成,每行包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0<n<=50)。

Output

对于每个测试实例,请输出铺放方案的总数,每个实例的输出占一行。

Sample Input

1
3
2

Sample Output

1
3
2

Source

零起点学算法

 

代码如下:

#include <stdio.h>

int main() {
    int n, i;
    long long t, a1, a2;
    while (scanf("%d", &n) != EOF) {
        a1 = 1;
        a2 = 2;
        if (n <= 2) {
            printf("%d\n", n);
            continue;
        }
        for (i = 3; i <= n; i++) {
            t = a2;
            a2 = a1 + a2;
            a1 = t;
        }
        printf("%lld\n", a2);
    }
    return 0;
}

posted on 2018-06-11 17:42  _McR  阅读(308)  评论(0编辑  收藏  举报

导航