Submission #759042

# Submission time Handle Problem Language Result Execution time Memory
759042 2023-06-15T17:18:07 Z Charizard2021 Take-out (POI13_usu) C++17
100 / 100
156 ms 39040 KB
#include <bits/stdc++.h>
using namespace std;
int main() {
    int n, k;
    cin >> n >> k;
    string s;
    cin >> s;
    vector<int> val;
    vector<int> x;
    x.push_back(0);
    int cVal = 0;
    vector<vector<int> > ans;
    for(int i = 0; i < n; i++){
        val.push_back(i);
        if(s[i] == 'c'){
            x.push_back(0);
            cVal++;
        }
        else{
            x[cVal]++;
        }
        if(cVal != 0 && x[cVal] + x[cVal - 1] >= k){
            vector<int> v2;
            ans.push_back(v2);
            for(int j = 0; j <= k; j++){
                ans[(int)ans.size() - 1].push_back(val[(int)val.size() - 1]);
                val.pop_back();
            }
            int difference = x[cVal];
            cVal--;
            x.pop_back();
            x[cVal] -= (k - difference);
        }
    }
    reverse(ans.begin(), ans.end());
    for(int i = 0; i < ans.size(); i++){
        for(int j = ans[i].size() - 1; j >= 0; j--){
            cout << ans[i][j] + 1 << " ";
        }
        cout << "\n";
    }
}

Compilation message

usu.cpp: In function 'int main()':
usu.cpp:36:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   36 |     for(int i = 0; i < ans.size(); i++){
      |                    ~~^~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 300 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 1 ms 300 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 16 ms 2940 KB Output is correct
2 Correct 9 ms 1872 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 28 ms 4280 KB Output is correct
2 Correct 25 ms 4324 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 52 ms 8424 KB Output is correct
2 Correct 33 ms 4848 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 74 ms 11944 KB Output is correct
2 Correct 74 ms 11632 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 156 ms 39040 KB Output is correct
2 Correct 93 ms 17040 KB Output is correct
3 Correct 108 ms 15696 KB Output is correct
4 Correct 108 ms 15480 KB Output is correct