题解:
显然这是一个带下标的组合方案,可构造EGF求解。
而不同的是,如果相同颜色的砖块的下标不同对于答案是无影响的,那么此时考虑将同种颜色的EGF单独列出,每种大小的元素为1(强制合法方案中同种颜色的标号只存在由小到大)。然后再做就可以了。
#include<iostream>
#include<cstdio>
using namespace std;
const int Mod=1e4+7;
inline int power(int a,int b){
int rs=1;
for(;b;b>>=1,a=a*a%Mod)if(b&1)rs=rs*a%Mod;
return rs;
}
int main(){
int T;scanf("%d",&T);
while(T--){
int a;
scanf("%d",&a);
cout<<(power(4,a-1)+power(2,a-1))%Mod<<endl;
}
}