Submission #1268154

#TimeUsernameProblemLanguageResultExecution timeMemory
1268154drakozsJJOOII 2 (JOI20_ho_t2)C++20
13 / 100
2092 ms724 KiB
#include<bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds; #define ordered_set tree<pair<int, int>, null_type,less<pair<int, int>>, rb_tree_tag,tree_order_statistics_node_update> #define ll long long #define MOD 1000000007 #define MAXN 2e5 #define SIZE 448 #define pb push_back using namespace std; ll power(ll a, ll b){ if (b == 0) return 1; ll res = power(a, b / 2); if (b % 2 == 1) return res * res % MOD * a % MOD; return res * res % MOD; // if (b % 2 == 1) return res * res * a; // return res * res; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, k; cin >> n >> k; string s; cin >> s; int ans = -1; for (int i = 0; i < n; i++){ if (s[i] == 'J'){ int curr = 0; char curChar = 'J'; int last = -1; for (int j = i; j < n; j++){ if (s[j] == curChar){ curr++; if (curr == k){ if (curChar == 'J') curChar = 'O'; else if (curChar == 'O') curChar = 'I'; else{ last = j; break; } curr = 0; } } } if (last != -1){ if (ans == -1){ ans = last - i + 1 - k * 3; } else ans = min(ans, last - i + 1 - k * 3); } } } cout << ans << "\n"; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...