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 an+10;

for(int i=1;i<=n;i++)cin>>ai;

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+=ay;continue;

}

if(sum>r){

sum-=ax;

x++;

}

}

cout<<ans<<endl;

}

int main(){

int t;cin>>t;

while(t--){

sol();

}

}

相关推荐
智闲电子设计1 小时前
STM32 定时器 PWM 实战:从呼吸灯到舵机控制
c语言·stm32·单片机·嵌入式硬件·学习
佳児素花痴╮2 小时前
树的基础知识与查找排序算法
数据结构·算法
lueluelue478 小时前
LeetCode:链表
算法·leetcode·链表
橘子汽水16811 小时前
Leetcode 23,543合并K个升序链表,二叉树的直径
算法·leetcode·链表
huameinan狮子11 小时前
Adaboost算法原理与计算实例
算法
Tri_Function11 小时前
动态规划DP1(c++)
c++
别怪我很水11 小时前
API中提供了VelocityTracker类用于计算触摸事件MotionEvent的速度,而其内部默认使用的方法就是最小二乘法,本 ...
算法·gitee·最小二乘法
清水迎朝阳14 小时前
客户端软件 — 用户统计方案
服务器·c++·客户端·用户统计
Re.不晚14 小时前
挑战做100道力扣算法- DAY1
算法·leetcode·职场和发展