双指针 小红统计区间 牛客周赛 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;
}
相关推荐
沧澜sincerely19 小时前
蓝桥杯算法练习
算法·职场和发展·蓝桥杯
一起养小猫19 小时前
Flutter for OpenHarmony 进阶:手势识别与碰撞检测算法深度解析
算法·flutter·harmonyos
Herbert_hwt19 小时前
数据结构与算法绪论:为何学、学什么、如何避坑
c语言·数据结构·算法
XX風19 小时前
1-3-kernel PCA
算法
C+-C资深大佬19 小时前
C++多态
java·jvm·c++
今儿敲了吗19 小时前
11| 子集
c++·笔记·算法
阿猿收手吧!19 小时前
【C++】无锁原子栈:CAS实现线程安全
开发语言·c++·安全
Jinuss19 小时前
源码分析之React中Scheduler调度器的最小二叉堆
javascript·算法·react.js
高洁0119 小时前
多模态融合驱动下的具身学习机制研究
python·算法·机器学习·数据挖掘·知识图谱
宵时待雨19 小时前
数据结构(初阶)笔记归纳10:二叉树
数据结构·笔记·算法