Submission #1266976

#TimeUsernameProblemLanguageResultExecution timeMemory
1266976nendhxTrener (COCI20_trener)C++20
55 / 110
2092 ms5956 KiB
#include<bits/stdc++.h>
#define int long long
using namespace std;
int mod = 1e9 + 7;

signed main(){
    ios::sync_with_stdio(false);
    cin.tie(NULL);
    int n, k, sum = 0;
    cin >> n >> k;
    string s[n][k];
    for(int i = 0; i < n; i++){
        for(int j = 0; j < k; j++){
            cin >> s[i][j];
        }
    }
    vector<vector<int>> dp(n, vector<int>(k));
    for(int i = 0; i < k; i++){
        dp[0][i] = 1;
    }
    for(int i = 1; i < n; i++){
        for(int j = 0; j < k; j++){
            int t = 0;
            for(int l = 0; l < k; l++){
                if(s[i][j].substr(0, i) == s[i - 1][l] || s[i][j].substr(1, i) == s[i - 1][l]){
                    dp[i][j] = (dp[i][j] + dp[i - 1][l]) % mod;
                }
            }
        }
    }
    for(int i = 0; i < k; i++){
        sum = (sum + dp[n - 1][i]) % mod;
    }
    cout << sum << '\n';
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...