#include "floppy.h"
#include <bits/stdc++.h>
using namespace std;
void read_array(int subtask_id, const vector<int> &v) {
string res = "";
vector<int> vec;
int n = v.size();
for(int i = 0; i < n; i++){
while(!vec.empty() && v[vec.back()] < v[i]){
vec.pop_back(); res += "0";
}
vec.push_back(i);
res += "1";
}
while(!vec.empty()){
res += "0"; vec.pop_back();
}
save_to_floppy(res);
}
vector<int> solve_queries(int subtask_id, int N, const string &bits, const vector<int> &a, const vector<int> &b) {
vector<int> dp(N), vec;
int cur = 0;
for(int i = 0; i < (int) bits.size(); i++){
if(bits[i]=='1'){
vec.push_back(cur);
cur++;
}else{
dp[vec.back()] = cur;
vec.pop_back();
}
}
int q = a.size();
vector<int> res(q);
for(int i = 0; i < q; i++){
for(int j = a[i]; j <= b[i]; j++){
if(dp[j] > b[i]){
res[i] = j; break;
}
}
}
return res;
// vector<int> answers = {0, 0, 0, 0, 1, 2, 2, 2, 2, 3};
// return answers;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |