Color the blocks HDU - 6934
原题
题目解析:大意是在n*n的网格中可以涂黑白两种颜色,但需要满足一个条件,对于每个 (x,y),不能和 (x−3,y),(x−1,y+2),(x+1,y+2),(x+3,y)四个网格的颜色相同!
会发现当大于4的时候,这个规律能确定奇数行的数字所有数字
所以大于4的时候有4种情况
由于小于4需要分类讨论,当小于4的时候分别计算他们的个数即可!
等于1有2种情况,等于2有16种情况,等于3有32种情况!
#include<bits/stdc++.h>
using namespace std;
int main(){
int t;
cin >> t;
while(t--){
int n;
cin >> n;
if(n==1) cout << 2 << endl;
else if(n==2) cout << 16 << endl;
else if(n==3) cout << 32 << endl;
else cout << 4 << endl;
}
return 0;
}