#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001LL mint gu(int N,int K){ vector dp(1<<(N*3),vector(N*3,vector(K+1,0))); dp[1][0][0] = 1; rep(i,1<<(N*3)){ rep(j,N*3){ rep(k,K+1){ if(dp[i][j][k]==0)continue; rep(l,N*3){ if((i>>l)&1)continue; int nk = k; if(j/3 == l/3){ if(abs(j%3-l%3)!=1)continue; } else{ if(abs((j/3-l/3))!=1)continue; if((j+l)%6!=5)continue; { if(abs(j-l)!=1)nk++; } } if(nk>K)continue; dp[i|(1<>N>>K; //cout<