Submission #1039331

#TimeUsernameProblemLanguageResultExecution timeMemory
1039331vjudge1Bajka (COCI20_bajka)C++17
20 / 70
9 ms22188 KiB
//------------------------------------\ // ------------------------------ \ // | created by Pham Phuongg | \ // | phamvuphuong2008 | \ // | THPT CHUYEN HA TINH | \ // | HA TINH, VIET NAM | \ // | Bé Phương from TK4-CHT | \ // ------------------------------ \ //------------------------------------\ #include<bits/stdc++.h> #define endl '\n' #define int long long #define pb push_back #define fi first #define se second #define ii pair<int,int> #define iii pair<int,ii> using namespace std; const int maxn = 3e2+5; int n,m, dp[maxn][30][maxn]; string s; vector<int>pos[30]; main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin >> n >> m >> s; s = " " + s; for (int i = 1; i <= n; i++) pos[s[i] - 'a'].pb(i); cin >> s; s = " " + s; memset(dp, 0x3f, sizeof dp); for (int x : pos[s[1] - 'a']) { dp[1][s[1] - 'a'][x] = 0; } for (int i = 2; i <= m; i++) { for (int x : pos[s[i] - 'a']) { for (int y : pos[s[i-1] - 'a']) { if (x != y) dp[i][s[i]-'a'][x] = min(dp[i][s[i]-'a'][x], dp[i-1][s[i-1]-'a'][y] + abs(x - y)); } } } int mini = 1e18; for (int x : pos[s[m] - 'a']) { mini = min(mini, dp[m][s[m]-'a'][x]); } if (mini == 1e18) cout << "-1"; else cout << mini; }

Compilation message (stderr)

bajka.cpp:1:1: warning: multi-line comment [-Wcomment]
    1 | //------------------------------------\
      | ^
bajka.cpp:24:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   24 | main() {
      | ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...