LeetCode Weekly Contest 184
問題文
省略
省略
C++に変換後のコードはこちら
#define main dummy_main
{}
#undef main
int sz, pat[12][3], ok[12][12];
Modint dp[12], nx[12];
class Solution {
public:
int numOfWays(int n) {
Modint res = 0;
sz = 0;
rep(i,3) rep(j,3) rep(k,3) if(i!=j && j!=k){
pat[sz][0] = i;
pat[sz][1] = j;
pat[sz][2] = k;
sz++;
}
rep(i,sz) rep(j,sz){
ok[i][j] = 0;
rep(k,3) if(pat[i][k]==pat[j][k]) break_continue;
ok[i][j] = 1;
}
rep(i,sz) dp[i] = 1;
rep(n-1){
rep(i,sz) nx[i] = 0;
rep(i,sz) rep(j,sz) if(ok[i][j]) nx[j] += dp[i];
rep(i,sz) dp[i] = nx[i];
}
rep(i,sz) res += dp[i];
return res;
}
};
Current time: 2024年04月25日21時28分45秒
Last modified: 2020年04月19日10時50分06秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る
Logged in as: unknown user (not login)