0
点赞
收藏
分享

微信扫一扫

CodeForces - 811B.Vladik and Complicated Book

忍禁 2022-01-26 阅读 43
c++拓扑学

题目传送门icon-default.png?t=M0H8https://codeforces.com/problemset/problem/811/B

题目意思:有串数字,然后再给你一个区间[L,R],将他们中间的数排序即可。然后判断他们中间某一位数字是否发生了变化。

思路:把这个区间小于等于x这个数的个数求出来,值会是x-l+1

#include <bits/stdc++.h>
using namespace std;
int s[20000];
int main(){
    int n,m,l,r,x,gs=0;
    while(cin>>n>>m){
        for(int i=1;i<=n;i++)cin>>s[i];
        while(m--){
            gs=0;
            cin>>l>>r>>x;
            for(int i=l;i<=r;i++)if(s[x]>=s[i])gs++;
            if(gs==x-l+1)cout<<"Yes"<<endl;
            else cout<<"No"<<endl;
        }
    }
    return 0;
}
举报

相关推荐

0 条评论