Submission #1292088

#TimeUsernameProblemLanguageResultExecution timeMemory
1292088jahongirFloppy (RMI20_floppy)C++20
100 / 100
162 ms3812 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...