从长为n的全为正数的数组a中,找到个数最少的连续子数列使其和>=m

example:

n=10,m=15,a[10]={5 1 3 5 10 7 4 9 2 8},结果为2

解题思路:昨天做了一个关于尺取法的问题,今天搜了一个题目来做。首先sum[i]把前i个数的和统计好,接下来就是找sum[i] - sum[j]了,按照一般的思路来讲肯定是要枚举j了,其实不然,因为我们要找的是最少个数并且全为正数,那么只需要维护好一个最大的j即可。因为sum[i] - sum[j] >= m,sum[i]-sum[j+1] >= m,那么j肯定是不需要的了,因为我们有j+1也能满足条件,并且它所在的序列更短。

这题要注意无解的情况,这里WA了一次。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;const int maxn = 100005;
const int inf = 0x7fffff;
int n,s;
int sum[maxn];int main()
{int t;scanf("%d",&t);while(t--){scanf("%d%d",&n,&s);for(int i = 1; i <= n; i++)scanf("%d",&sum[i]);for(int i = 2; i <= n; i++)sum[i] += sum[i-1];if(sum[n] < s){printf("0\n");continue;}int k = 0,ans = inf;for(int i = 1; i <= n; i++)while(sum[i] - sum[k] > s){ans = min(ans,i - k);k++;}printf("%d\n",ans);}return 0;
}

poj 3061(尺取法)相关推荐

  1. POJ 3320 尺取法,Hash,map标记

    1.POJ 3320 2.链接:http://poj.org/problem?id=3320 3.总结:尺取法,Hash,map标记 看书复习,p页书,一页有一个知识点,连续看求最少多少页看完所有知识 ...

  2. POJ 3061 (二分+前缀和or尺取法)

    题目链接: http://poj.org/problem?id=3061 题目大意:找到最短的序列长度,使得序列元素和大于S. 解题思路: 两种思路. 一种是二分+前缀和.复杂度O(nlogn).有点 ...

  3. 尺取法 POJ 3601 Subsequence

    题目传送门 1 /* 2 题意:求连续子序列的和不小于s的长度的最小值 3 尺取法:对数组保存一组下标(起点,终点),使用两端点得到答案 4 1. 记录前i项的总和,求[i, p)长度的最小值,用二分 ...

  4. 尺取法 POJ 3320 Jessica's Reading Problem

    题目传送门 1 /* 2 尺取法:先求出不同知识点的总个数tot,然后以获得知识点的个数作为界限, 更新最小值 3 */ 4 #include <cstdio> 5 #include &l ...

  5. Bound Found POJ - 2566(尺取法+前缀和创造区间变化趋势)

    题意: 给定一个数组和一个值t,求一个子区间使得其和的绝对值与t的差值最小,如果存在多个,任意解都可行. 题目: Signals of most probably extra-terrestrial ...

  6. *【POJ - 3061】 Subsequence (尺取或二分)

    题干: A sequence of N positive integers (10 < N < 100 000), each of them less than or equal 1000 ...

  7. (尺取法模板题) QLU_ACM 2021 专题训练(一) D - Subsequence 题解

    D - Subsequence POJ - 3061 <----------- 原题在这 题目大意 给定数组a,求其符合∑a[i] > S 的最短子数列. 尺取法解析 蒟蒻这道题WA了8次 ...

  8. 尺取法 --算法竞赛专题解析(2)

    本系列文章将于2021年整理出版,书名<算法竞赛专题解析>. 前驱教材:<算法竞赛入门到进阶> 清华大学出版社 2019.8 网购:京东 当当      作者签名书 如有建议, ...

  9. 【常用技巧精选】尺取法

    整理的算法模板合集: ACM模板 目录 1.反向扫描 1 找指定和的整数对 A.UVA1121 Subsequence B.POJ 3320 Jessica's Reading Problem C.l ...

最新文章

  1. win7完美兼容DynamipsGUI(小凡模拟器)攻略
  2. c++实现平面上的形状编辑
  3. SpringMVC中@ResponseBody和@RequestBody的使用
  4. 如何在 Windows 上安装 Python | Linux 中国
  5. 使用Spring boot,Thymeleaf,AngularJS从零开始构建一个新的Web应用程序-第1部分
  6. 堆栈的初始化,主要是为ss和SP赋初值
  7. ASP.NET判断当前日期是第几周
  8. 程序员别埋头苦干了,花时间学点薪资谈判技巧多赚一个亿可好?
  9. [Java] 蓝桥杯ADV-178 算法提高 简单加法
  10. arcgis engine设置数据源路径_不用ArcGIS做前期分析,你是不是想被辞!
  11. keil4c语言流水灯程序,C51 keil v4 流水灯简单代码的编写
  12. 计算机网络原理综合实验
  13. 如何为Safari浏览器安装Flash插件?
  14. 四足机器人(从PCB到3D打印)
  15. 离散数学(8)——函数
  16. win10 jdk环境变量配置
  17. 周志华 AdaBoost报告总结
  18. 华为郑叶来:AI炒作和投机回落,是行业应用春天的开始...
  19. python爬虫爬取股票评论,调用百度AI进行语义分析, matlab观察股票涨跌和评论的关系
  20. sketch(三)--插件

热门文章

  1. 神策数据易向文:打造券商上层数据应用的坚实基础
  2. 有奖竞赛 | “神策杯”高校算法大师赛揭幕,寻找最强文本处理大神
  3. 译文| 相信指标还是相信经验?
  4. Maven学习总结(十)——使用Maven编译项目gbk的不可映射问题
  5. Spark使用总结与分享
  6. Ubuntu ls可以查看到文件,图形界面却看不到
  7. 转 10 个最佳的 Node.js 的 MVC 框架
  8. EIGRP Metric计算
  9. 重写GridView的Intellisence问题
  10. Grounded Theory and Coding Lecture Notes