C. Boring Day(cf955)

题意:每次可以从数组顶端取任意数量,取出的所有数组之和如果在l到r之间,则获胜,否则失败,求最大获胜局数。

分析:用双指针算出区间内的和。

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

void sol(){

ll n,l,r;cin>>n>>l>>r;

ll ans=0,sum=0;

ll a[n+10];

for(int i=1;i<=n;i++)cin>>a[i];

ll x=1,y=0;ll c=0;

while(x<=n&&y<=n){

if(sum>=l&&sum<=r){

ans++;sum=0;x=y+1;

}

if(sum<l){

y++;

sum+=a[y];continue;

}

if(sum>r){

sum-=a[x];

x++;

}

}

cout<<ans<<endl;

}

int main(){

int t;cin>>t;

while(t--){

sol();

}

}

相关推荐
DexterYttt3 分钟前
AT_abc212_d [ABC212D] Querying Multiset
数据结构·c++·算法·优先队列
刻意思考13 分钟前
KM算法的时间复杂度,为什么可以降低一个数量级
后端·算法·程序员
橙序员小站15 分钟前
探究分布式哈希算法:哈希取模与一致性哈希
算法·架构
飞川00116 分钟前
【LeetCode 热题100】45:跳跃游戏 II(详细解析)(Go语言版)
算法·go
.格子衫.20 分钟前
006贪心——算法备赛
数据结构·算法·leetcode
Tadecanlan29 分钟前
[C++面试] explicit面试8问 —— 较难,可简单了解即可
开发语言·c++
the_nov36 分钟前
9.进程信号
linux·c++
程序员黄同学1 小时前
解释观察者模式,如何实现观察者模式?
前端·算法·观察者模式
Repeat7151 小时前
日志统计(双指针)
java·数据结构·算法·蓝桥杯·双指针·滑动窗口
独好紫罗兰1 小时前
洛谷题单3-P5725 【深基4.习8】求三角形-python-流程图重构
开发语言·python·算法