Submission #1094968

#TimeUsernameProblemLanguageResultExecution timeMemory
1094968eysbutnoHedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++17
0 / 100
3050 ms21696 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = array<int, 2>;
#define all(x) begin(x), end(x)
#define sz(x) (int) (x).size()

int main() {
    cin.tie(0) -> sync_with_stdio(0);
    int n, q;
    cin >> n >> q;
    vector<int> w(n);
    for (int &i : w) { cin >> i; }
    for (int t = 0; t < q; t++) {
        int l, r, k;
        cin >> l >> r >> k;
        --l, --r;
        vector<int> sorted;
        for (int i = l; i <= r; i++) {
            sorted.push_back(w[i]);
        }
        sort(all(sorted));
        int lst = -1;
        for (int i = r; i >= l; i--) {
            if (sorted[i - l] != w[i]) {
                lst = i;
                break;
            }
        }
        int ans = -1;
        if (lst != -1) {
            int mn = INT_MAX, mx = -1;
            for (int i = l; i <= lst; i++) {
                mn = min(mn, w[i]);
                mx = max(mx, w[i]);
            }
            ans = mn + mx;
        }
        cout << (ans <= k) << "\n";
    }
}

// this is just for subtasks lmao to see if my sol is right
#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...