Submission #1302998

#TimeUsernameProblemLanguageResultExecution timeMemory
1302998uranhishigTrener (COCI20_trener)C++20
0 / 110
9 ms1440 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define all(a) (a).begin(),(a).end() #define rep(i, n) for(int i = 0; i < (n); i++) #define pb push_back #define rep1(i, n) for(int i = 1; i <= (n); i++) #define ff first #define ss second const int mod = 1e9 + 7; map<string, int> mp; signed main() { int n, m; cin >> n >> m; for (int j = 0; j < m; j++) { string s; cin >> s; mp[s]++; } int ans = 0; for (int i = 1; i < n; i++) { for (int j = 0; j < m; j++) { string s; cin >> s; string s1 = "", s2 = ""; for (int i = 0; i < s.size() - 1; i++) { s1 += s[i]; } for (int i = 1; i < s.size(); i++) { s2 += s[i]; } if(s1 == s2) { mp[s] += mp[s1]; mp[s] += mod; mp[s] %= mod; } else { mp[s] += mp[s2] + mp[s1]; mp[s] += mod; mp[s] %= mod; } if(s.size() == n){ ans += mp[s]; ans += mod; ans %= mod; } } } cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...