双指针 小红统计区间 牛客周赛 Round 28

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 1e5 + 10;
ll a[N];

int main(){
	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    ll n,k;
    cin >> n >> k;
    for(int i = 1; i <= n; i++) cin >> a[i];
    int left = 1;
    ll sum = 0;
    ll ans = 0;
    for(int right = 1; right <= n; right++){
        sum += a[right];
        while(sum >= k){
            sum -= a[left];
            left++;
        }
        ans += left - 1;
    }
    cout << ans;
	return 0;
}
相关推荐
hans汉斯3 分钟前
建模与仿真|基于GWO-BP的晶圆机器人大臂疲劳寿命研究
大数据·数据结构·算法·yolo·机器人·云计算·汉斯出版社
wazmlp0018873694 分钟前
python第一次作业
开发语言·python·算法
Miqiuha5 分钟前
二次散列学习
学习·算法·哈希算法
墨雪不会编程5 分钟前
C++【string篇4】string结尾篇——字符编码表、乱码的来源及深浅拷贝
android·开发语言·c++
橘颂TA17 分钟前
【剑斩OFFER】算法的暴力美学——力扣 127 题:单词接龙
算法·leetcode·职场和发展
PnZh0Y118 分钟前
python代码练习1
开发语言·python·算法
_Soy_Milk20 分钟前
【算法工程师】—— Python 高级
开发语言·python·算法
小毅&Nora31 分钟前
【Java线程安全实战】⑭ ForkJoinPool深度剖析:分治算法的“智能厨房“如何让并行计算跑得更快
java·算法·安全
Swift社区1 小时前
LeetCode 380 O(1) 时间插入、删除和获取随机元素
算法·leetcode·职场和发展
budingxiaomoli1 小时前
优选算法-哈希表
数据结构·算法·散列表