题解 | 区间增量与区间小于计数

区间增量与区间小于计数

https://www.nowcoder.com/practice/74481dd14e3b4875a190952f86e6ffab

一道非常基础的模拟题,按照题目模拟即可,由于题目中的数组的区间边界是从1开始的,因此最好将数组长度设定为n+1,然后从1开始输入数组a

#include<bits/stdc++.h>
using namespace std;
#define ll long long 
int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    ll n,q;cin>>n>>q;
    vector<ll> a(n+1);
    for(int i=1;i<=n;++i) cin>>a[i];
    for(int i=1;i<=q;++i){
        int op;cin>>op;
        if(op==1){
            ll l,r,x;cin>>l>>r>>x;
            for(int j=l;j<=r;++j){
                a[j]+=x;
            }
        }else{
            ll l,r,x,ans=0;cin>>l>>r>>x;
            for(int j=l;j<=r;++j){
                if(a[j]<x){
                    ans++;
                }
            }
            cout<<ans<<endl;
        }
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务