Codeforces Round #566 (Div. 2) A. Filling Shapes

链接:

https://codeforces.com/contest/1182/problem/A

题意:

You have a given integer n. Find the number of ways to fill all 3×n tiles with the shape described in the picture below. Upon filling, no empty spaces are allowed. Shapes cannot overlap.

This picture describes when n=4. The left one is the shape and the right one is 3×n tiles.
图片复制不了

思路:

给定形状只能再n为偶数的情况下完全覆盖,所以奇数不用考虑,同时,每两列为一组,一组有两种。
答案就是2^(n/2)。

代码:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n;
    cin >> n;
    int res = 1;
    if (n%2 == 1)
        cout << 0 << endl;
    else
    {
        for (int i = 1;i <= n/2;i++)
            res *= 2;
        cout << res << endl;
    }

    return 0;
}

猜你喜欢

转载自www.cnblogs.com/YDDDD/p/11009825.html
今日推荐