Submission #958944

# Submission time Handle Problem Language Result Execution time Memory
958944 2024-04-07T08:40:59 Z MinaRagy06 Floppy (RMI20_floppy) C++17
100 / 100
523 ms 13864 KB
#include <bits/stdc++.h>
#include "floppy.h"
#ifdef MINA
#include "grader.cpp"
#endif
using namespace std;
#define ll long long

void read_array(int sub, const vector<int> &v) {
	int n = v.size();
	stack<int> st;
	string s;
	for (int i = 0; i < n; i++) {
		while (st.size() && v[i] > v[st.top()]) {
			st.pop();
			s.push_back('0');
		}
		st.push(i);
		s.push_back('1');
	}
	save_to_floppy(s);
}
vector<int> solve_queries(int sub, int n, const string &bits, const vector<int> &a, const vector<int> &b) {
	int q = a.size();
	vector<array<int, 2>> ask[n];
	vector<int> ans(q, -1);
	for (int i = 0; i < q; i++) {
		ask[b[i]].push_back({a[i], i});
	}
// 	cout << "HI" << endl;
	vector<int> st;
	int cur = 0;
	for (int i = 0; i < n; i++) {
		while (bits[cur] == '0') {
			st.pop_back();
			cur++;
		}
		st.push_back(i);
// 		for (auto j : st) {
// 			cout << j << ' ';
// 		}
// 		cout << '\n';
		cur++;
		for (auto [l, idx] : ask[i]) {
			for (int j = st.size() - 1; j >= 0; j--) {
				if (j == 0 || st[j - 1] < l) {
					ans[idx] = st[j];
					break;
				}
			}
		}
	}
// 	for (auto i : ans) {
// 		cout << i << '\n';
// 	}
	return ans;
}

Compilation message

stub.cpp: In function 'void run2()':
stub.cpp:101:30: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  101 |     if (query_answers.size() != M) {
      |         ~~~~~~~~~~~~~~~~~~~~~^~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 820 KB Output is correct
2 Correct 2 ms 820 KB Output is correct
3 Correct 2 ms 824 KB Output is correct
4 Correct 2 ms 828 KB Output is correct
5 Correct 1 ms 828 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 17 ms 3612 KB Output is correct
2 Correct 20 ms 3764 KB Output is correct
3 Correct 46 ms 3984 KB Output is correct
4 Correct 19 ms 4016 KB Output is correct
5 Correct 17 ms 3804 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 67 ms 13452 KB Output is correct
2 Correct 68 ms 13372 KB Output is correct
3 Correct 523 ms 13760 KB Output is correct
4 Correct 100 ms 13628 KB Output is correct
5 Correct 73 ms 13864 KB Output is correct