当前位置: 首页 > news >正文

小红统计区间(easy)【牛客tracker 每日一题】

小红统计区间(easy)

时间限制:1秒 空间限制:256M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

本题为easy版本,和hard版本的唯一区别是a i a_iai保证是正整数!

小红拿到了一个数组,她想知道,有多少非空区间满足区间所有元素之和不小于k kk

输入描述:

第一行输入两个正整数n , k n,kn,k,用空格隔开。
第二行输入n nn个正整数a i a_iai,代表数组的元素。
1 ≤ n ≤ 10 5 1≤n≤10^51n105
1 ≤ a i ≤ 10 9 1≤a_i≤10^91ai109
1 ≤ k ≤ 10 14 1≤k≤10^{14}1k1014

输出描述:

输出一个整数表示满足条件的非空区间个数。

示例1

输入:

5 5 1 4 2 1 3

输出:

8

解题思路

本题依托滑动窗口(双指针)高效统计满足条件的区间数,利用数组元素均为正整数的特性(前缀和严格递增):先初始化左指针l = 1 l=1l=1、区间和s u m = 0 sum=0sum=0、答案a n s = 0 ans=0ans=0;遍历右指针r rr1 11n nn,累加a [ r ] a[r]a[r]s u m sumsum中,当s u m ≥ k sum≥ksumk时,说明以r rr为右端点、左端点≥ l ≥ll的所有区间(共n − r + 1 n−r+1nr+1个)均满足和≥ k ≥kk,将该数量累加到a n s ansans,随后不断右移左指针l ll并减去a [ l ] a[l]a[l],直到s u m < k sum<ksum<k;最终a n s ansans即为满足条件的非空区间总数。该方法时间复杂度为O ( n ) O(n)O(n),每个元素仅被左右指针各访问一次,适配n ≤ 1 e 5 、 k ≤ 1 e 14 n≤1e5、k≤1e14n1e5k1e14的规模,通过滑动窗口避免枚举所有区间( O ( n 2 ) ) (O(n²))O(n2),精准且高效地统计出符合要求的区间数量。

总结

  1. 核心逻辑:利用正整数数组前缀和递增的特性,滑动窗口快速定位以r rr为右端点的最小合法左端点。
  2. 关键计算:找到最小左端点后,直接累加n − r + 1 n−r+1nr+1(以r为右端点的合法区间数)。
  3. 时间复杂度:O ( n ) O(n)O(n),适配大数据量场景,避免暴力枚举的低效问题。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefunsignedlonglongull;typedefpair<ll,ll>pii;constll N=1e5+10;constll p=1e9+7;intmain(){intn;ll k;cin>>n>>k;vector<ll>a(n+1);for(ll i=1;i<=n;i++)cin>>a[i];ll ans=0,sum=0;ll l=1;for(ll r=1;r<=n;r++){sum+=a[r];while(l<=r&&sum>=k){ans+=n-r+1;sum-=a[l];l++;}}cout<<ans<<endl;return0;}
http://www.jsqmd.com/news/405611/

相关文章:

  • 2026北京信用卡协商TOP5机构实测:专业能力与口碑如何选? - 代码非世界
  • [AI提效-27]-2026年AI多媒体生成工具全景对比指南
  • [AI提效-26]-2026年多媒体创作工具全景指南
  • MATLAB代码:基于两阶段鲁棒优化算法的多微网联合调度及容量配置 关键词:多微网 优化调度 ...
  • 编译生成方法二:手动写cmake脚本
  • 编译生成方法一:build_oai --phy_simulators
  • 基于5G的车辆跟驰预警系统(论文+源码)
  • 基于物联网的超市智能自助购物系统设计(论文+源码)
  • 基于RFSOC+VU13P在复杂电磁环境构设中技术应用分析
  • 编译生成方法三:CMakePresets.json
  • 2026更新版!8个一键生成论文工具测评:自考毕业论文+开题报告高效写作指南
  • python高校体育馆场地预约系统 商品购买系统小程序
  • RFSOC与ADRV9009、AD9026、AD9361技术指标及应用场景对比分析
  • 牛B,登上GitHub Trending的国产神器:把RAG应用装进手机只要3行代码~~~
  • Pimp My LLM Leveraging Variability Modeling to Tune Inference Hyperparameters
  • 关节养护指南:手指关节炎吃保健品哪个品牌好(品牌榜单) - 品牌排行榜
  • 『科技』翁家翌访谈播客
  • Predicting Contextual Informativeness for Vocabulary Learning using Deep Learning
  • 本科生收藏!千笔AI,用户挚爱的降AIGC工具
  • 2026年伺服电子压力机生产厂家口碑推荐榜,这些市场佼佼者别错过!整形机/伺服热压机,伺服电子压力机公司口碑推荐榜 - 品牌推荐师
  • 导师推荐!顶流之选的降AI率软件 —— 千笔·专业降AI率智能体
  • 2026别错过!10个AI论文网站深度测评,继续教育毕业论文写作必备工具推荐
  • 数据的逻辑处理
  • 手动写cmake脚本
  • 基于ssm的社区居家服务系统_k61a6rq6
  • UG NX 曲面和实体缝合
  • 刷题学习笔记
  • 在线学习交流系统学习资料视频签到python-vue
  • 基于Springboot的合工大社团信息管理系统分析与设计
  • 【GitHub项目推荐--Superpowers:为编码代理赋能的完整软件开发工作流系统简介】⭐⭐⭐⭐⭐