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

}

}

相关推荐
列星随旋8 小时前
线段树和树状数组的学习
学习·算法
楼田莉子9 小时前
C++17新特性:__had_include/属性/求值顺序规则
开发语言·c++·后端
ytttr87310 小时前
OPC UA 协议栈 C 语言实现
c语言·开发语言·mfc
song50110 小时前
Ascend C 算子开发:从入门到上手
c语言·开发语言·图像处理·人工智能·分布式·flutter·交互
小a杰.10 小时前
Ascend C编程语言进阶:高性能算子开发技巧
android·c语言·开发语言
全糖可乐气泡水10 小时前
Codex适配国产信创环境安装部署与技术适配全解析
开发语言·git·python·算法·百度
h_a_o777oah10 小时前
状态机+划分型 DP :深度解析K-划分问题下 DP 状态的转移逻辑(洛谷P2679 P2331 附C++代码)
c++·算法·动态规划·acm·状态机dp·划分型dp·滚动数组优化
05候补工程师10 小时前
从算法理想向工程现实的跨越:SLAM 核心架构、思维误区与 Nav2 实战避坑指南
人工智能·算法·安全·架构·机器人
手写码匠12 小时前
Android 17 适配实战指南:新特性解读、隐私变更与迁移全攻略
人工智能·深度学习·算法·aigc
小a杰.12 小时前
Ascend C算子开发实战 - 从零开始写算子
c语言·开发语言