Submission #147495

#TimeUsernameProblemLanguageResultExecution timeMemory
147495dolphingarlicTake-out (POI13_usu)C++14
100 / 100
221 ms39052 KiB
#include <bits/stdc++.h> #pragma GCC Optimize("O3") #define FOR(i, x, y) for (int i = x; i < y; i++) #define MOD 1000000007 typedef long long ll; using namespace std; string s; int c = 0; vector<int> space = {0}, available; vector<vector<int>> sol; int main() { iostream::sync_with_stdio(false); cin.tie(0); int n, k; cin >> n >> k >> s; FOR(i, 0, n) { available.push_back(i); if (s[i] == 'c') { space.push_back(0); c++; } else space[c]++; if (c && space[c] + space[c - 1] >= k) { sol.push_back({}); FOR(j, 0, k + 1) { sol.back().push_back(available.back()); available.pop_back(); } int diff = space[c--]; space.pop_back(); space[c] -= (k - diff); } } reverse(sol.begin(), sol.end()); for (vector<int> i : sol) { reverse(i.begin(), i.end()); for (int j : i) cout << j + 1 << ' '; cout << '\n'; } return 0; }

Compilation message (stderr)

usu.cpp:2:0: warning: ignoring #pragma GCC Optimize [-Wunknown-pragmas]
 #pragma GCC Optimize("O3")
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...