Submission #651223

#TimeUsernameProblemLanguageResultExecution timeMemory
651223alexcccHedgehog Daniyar and Algorithms (IZhO19_sortbooks)C++14
17 / 100
551 ms6368 KiB
#include <bits/stdc++.h> 

#pragma GCC optimize("Ofast")

using namespace std;

int main(){

    ios_base::sync_with_stdio(0);
    cin.tie(0);

    int n, m;
    cin >> n >> m;
    if(n <= 5000 && m <= 5000){
        vector<long long> w(n + 1);
        for(int i = 1; i <= n; i ++) cin >> w[i];
        int l, r, k;
        for(int i = 0; i < m; i ++){
            cin >> l >> r >> k;
            long long mx = w[l];
            int check = 1;
            for(int j = l; j <= r; j ++){
                if(w[j] < mx && mx + w[j] > k){
                    check = 0;
                    break;
                }
                mx = max(mx,w[j]);
            }
            if(check==0)putchar('0');
            else putchar('1');
            putchar('\n');
        }
    }else{
        bool flag = true;
        int pre = 0;
        vector<pair<int,int>> sub;
        int left = 1, last = 0, now;
        for(int i = 1; i <= n; i ++){
            cin >> now;
            if(now < last){
                sub.push_back({left,i-1});//l to i-1 is increasing
                left = i;
            }
            last = now;
        }
        int l,r,k,sz=sub.size();
        for(int i=0;i<m;i++){
            cin>>l>>r>>k;
            int ind=lower_bound(sub.begin(),sub.end(),make_pair(l,r))-sub.begin();
            if(ind != sub.size() && r<=sub[ind + 1].second){
                putchar('1');
                putchar('\n');
            }else{
                putchar('0');
                putchar('\n');
            }
            
        }
    }

    return 0;
    
}

Compilation message (stderr)

sortbooks.cpp: In function 'int main()':
sortbooks.cpp:50:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   50 |             if(ind != sub.size() && r<=sub[ind + 1].second){
      |                ~~~~^~~~~~~~~~~~~
sortbooks.cpp:34:14: warning: unused variable 'flag' [-Wunused-variable]
   34 |         bool flag = true;
      |              ^~~~
sortbooks.cpp:35:13: warning: unused variable 'pre' [-Wunused-variable]
   35 |         int pre = 0;
      |             ^~~
sortbooks.cpp:46:19: warning: unused variable 'sz' [-Wunused-variable]
   46 |         int l,r,k,sz=sub.size();
      |                   ^~
#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...