제출 #1260423

#제출 시각아이디문제언어결과실행 시간메모리
1260423kawhietTrener (COCI20_trener)C++20
110 / 110
555 ms5816 KiB
#include <bits/stdc++.h> using namespace std; const int mod = 1e9 + 7; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int n, k; cin >> n >> k; vector<vector<string>> a(n, vector<string>(k)); for (int i = 0; i < n; i++) { for (int j = 0; j < k; j++) { cin >> a[i][j]; } } vector<vector<int>> dp(n, vector<int>(k)); fill(dp[0].begin(), dp[0].end(), 1); for (int i = 1; i < n; i++) { for (int j = 0; j < k; j++) { string s1 = a[i][j].substr(0, i); string s2 = a[i][j].substr(1, i); for (int r = 0; r < k; r++) { if (a[i - 1][r] == s1 || a[i - 1][r] == s2) { dp[i][j] = (dp[i][j] + dp[i - 1][r]) % mod; } } } } int res = 0; for (int i = 0; i < k; i++) { res = (res + dp[n - 1][i]) % mod; } cout << res << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...