题意
给定 n n n,让你用 1 × 2 1 \times 2 1×2 或 2 × 1 2 \times 1 2×1 的多米诺骨牌铺满整个 4 × n 4 \times n 4×n 的矩阵,并且相同的颜色的多米诺骨牌不能相邻。
分析
其实只要找到规律,就很好做了,不需要摆放很多种颜色。
比如下面的摆放:
aabb
bbaa
aabb
bbaa
只要判断一下 i i i 即可,不管 n n n 是多少,答案都不会错,是比较简单的解法。
Code
#include <cstdio>
using namespace std;
int n;
int main() {
scanf ("%d", &n);
// 竖着摆放多米诺骨牌,就不会导致重复 ,简单又好用
for (int i = 1; i <= n; i++) {
if (i % 2 == 1) printf ("a");
else printf ("b");
}
printf ("\n");
for (int i = 1; i <= n; i++) {
if (i % 2 == 1) printf ("a");
else printf ("b");
}
printf ("\n");
for (int i = 1; i <= n; i++) {
if (i % 2 == 0) printf ("a");
else printf ("b");
}
printf ("\n");
for (int i = 1; i <= n; i++) {
if (i % 2 == 0) printf ("a");
else printf ("b");
}
return 0;
}
完结撒花。