Submission #844742

#TimeUsernameProblemLanguageResultExecution timeMemory
844742HakiersGrowing Vegetable is Fun 3 (JOI19_ho_t3)C++17
0 / 100
1 ms348 KiB
#include <bits/stdc++.h> using namespace std; int n; string s; int moves; void repair(int idx){ while(idx - 1 > 0 && s[idx] != s[idx-1] && s[idx-1] == s[idx-2]){ swap(s[idx], s[idx-1]); moves++; idx--; } } int solve(){ for(int i = 1; i < n; i++) if(s[i] != s[i-1]) repair(i); reverse(s.begin(), s.end()); for(int i = 1; i < n; i++) if(s[i] != s[i-1]) repair(i); for(int i = 1; i < n; i++) if(s[i] == s[i-1]) return - 1; return moves; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> n >> s; cout << solve() << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...