LeetCode Biweekly Contest 38
問題文
省略
省略
C++に変換後のコードはこちら
#define main dummy_main
{}
#undef main
Modint cnt[1001][26];
Modint dp[1001], nx[1001];
class Solution {
public:
int numWays(vector<string>& S, string T) {
int N = S.size(), M = S[0].size();
Modint s;
rep(i,N) rep(j,M) S[i][j] -= 'a';
rep(i,T.size()) T[i] -= 'a';
rep(i,M) rep(j,26) cnt[i][j] = 0;
rep(i,N) rep(j,M) cnt[j][S[i][j]] += 1;
rep(i,M+1) dp[i] = 0;
dp[0] = 1;
rep(k,T.size()){
(dp[0], s) = (0, dp[0]);
rep(i,M) (dp[i+1], s) = (s * cnt[i][T[k]], s + dp[i+1]);
}
return sum(dp(M+1));
}
};
Current time: 2024年05月04日19時15分31秒
Last modified: 2020年11月01日01時36分31秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る
Logged in as: unknown user (not login)