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();

}

}

相关推荐
Live&&learn34 分钟前
算法训练-数据结构
数据结构·算法·leetcode
胡萝卜3.02 小时前
掌握C++ map:高效键值对操作指南
开发语言·数据结构·c++·人工智能·map
松岛雾奈.2302 小时前
机器学习--PCA降维算法
人工智能·算法·机器学习
电子_咸鱼2 小时前
【STL string 全解析:接口详解、测试实战与模拟实现】
开发语言·c++·vscode·python·算法·leetcode
sweet丶3 小时前
适合iOS开发的一种缓存策略YYCache库 的原理
算法·架构
哈茶真的c3 小时前
【书籍心得】左耳听风:传奇程序员练级攻略
java·c语言·python·go
是宇写的啊3 小时前
算法—滑动窗口
算法
风筝在晴天搁浅3 小时前
代码随想录 509.斐波那契数
数据结构·算法
落落落sss3 小时前
java实现排序
java·数据结构·算法
limenga1024 小时前
支持向量机(SVM)深度解析:理解最大间隔原理
算法·机器学习·支持向量机