제출 #511471

#제출 시각아이디문제언어결과실행 시간메모리
511471Gev2706Hedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++17
17 / 100
3073 ms29068 KiB
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cmath>
#include <algorithm>
#include <vector>
#include <set>
#include <unordered_set>
#include <queue>
#include <deque>
#include <string>
#include <sstream>
#include <iomanip>
#include <map>
#include <unordered_map>
#include <stack>
#include <cstdio>
#include <climits>
#include <tuple>
#include <ctime>
#include <cstring>
#include <numeric>
#include <functional>
#include <chrono>
#include <cassert>
#include <bitset>
using namespace std;
using ll = long long;
const int mod = 1e9 + 7;
const int N = 5e6 + 5;
#define full(a) a.begin(), a.end()
#define eps 1e-9


void solve() {
    int n, m; cin >> n >> m;
    vector<int> w(n);
    for (int i = 0; i < n; i++)cin >> w[i];
    while (m--) {
        int l, r, k; cin >> l >> r >> k;
        l--, r--;
        int ans = 1;
        set<int> s;
        s.insert(w[r]);
        for (int i = r - 1; i >= l; i--) {

            auto it = s.lower_bound(w[i]);
            if (it != s.begin()) {
                it--;
                if (*it + w[i] > k)ans = 0;
            }         
            s.insert(w[i]);

        }
        cout << ans << endl;
    }
}
int main()
{
    //int tc; cin >> tc;while(tc--)
    solve();
    return 0;
}
#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...