# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
591283 | piOOE | Growing Vegetable is Fun 3 (JOI19_ho_t3) | C++17 | 253 ms | 57180 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin >> n;
string S;
cin >> S;
array<int, 3> cnt{};
vector<vector<int>> g(3);
for (int i = 0; i < n; ++i) {
int a = S[i] == 'R' ? 0 : S[i] == 'G' ? 1 : 2;
++cnt[a];
g[a].push_back(i);
}
if (max({cnt[0], cnt[1], cnt[2]}) > (n + 1) / 2) {
cout << -1;
return 0;
}
array<int, 3> pl[cnt[0] + 1][cnt[1] + 1][cnt[2] + 1];
int dp[3][cnt[0] + 1][cnt[1] + 1][cnt[2] + 1];
pl[0][0][0] = {-1, -1, -1};
for (int t = 0; t < 3; ++t) {
reverse(g[t].begin(), g[t].end());
dp[t][0][0][0] = 0;
}
for (int sum = 1; sum <= n; ++sum) {
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |