Submission #1197572

#TimeUsernameProblemLanguageResultExecution timeMemory
1197572alterioTake-out (POI13_usu)C++20
100 / 100
98 ms40168 KiB
#include <bits/stdc++.h>

using namespace std;

#define endl '\n'
#define ll long long
#define all(x) (x).begin(), (x).end()

const int mxn = 1e6 + 10;

int ind[mxn], sum[mxn];
vector<vector<int>> ans;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n, k;
    cin >> n >> k;
    string s;
    cin >> s;
    s = "." + s;
    int cnt = 0;
    for (int i = 1; i <= n; i++) {
        cnt++;
        ind[cnt] = i;
        sum[cnt] = sum[cnt - 1] + (s[i] == 'c');
        if (cnt >= k + 1 && sum[cnt] - sum[cnt - k - 1] == 1) {
            vector<int> v;
            for (int j = cnt - k; j <= cnt; j++) v.push_back(ind[j]);
            sort(all(v));
            ans.push_back(v);
            cnt -= k + 1;
        }
    }
    for (int i = ans.size() - 1; i >= 0; i--) {
        for (auto x : ans[i]) cout << x << " ";
        cout << endl;
    }
}
#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...