LA2678最短子序列
题意:
给你一个正整数序列,问你在里面找到一个最短的子序列,要求子序列的和大于等于k,输出序列长度。
思路:
这个序列的每个数字都是正整数,那么就比较好想了,我们可以直接枚举终点,然后每次当当前和大于等于k的时候就把前面的markid(markid初始为1)点缩进,得到前端(我的是得到前端的下一个,这个无所谓,就是一个加不加1的事),然后更新最小值就行了,这样的时间复杂度是O(n)的,还有一个O(n*logn)的方法,就是白书上说的那个,我们可以枚举终点,然后二分去找起点,因为所有数字都是正整数,所以是单调的,找到最靠后的起点作为当前终点的起点,然后更新最小值就行了。
#include<stdio.h>
#define N 100000 + 10
int num[N];
int main ()
{
int n ,m ,i ,Ans;
while(~scanf("%d %d" ,&n ,&m))
{
for(i = 1 ;i <= n ;i ++)
scanf("%d",&num[i]);
int nows = 0 ,nowid;
for(Ans = 0 ,nowid = 1 ,i = 1 ;i <= n ;i ++)
{
nows += num[i];
if(nows >= m)
{
while(nows - num[nowid] >= m)
{
nows -= num[nowid];
nowid ++;
}
if(!Ans || Ans > i - nowid + 1)
Ans = i - nowid + 1;
}
}
printf("%d\n" ,Ans);
}
return 0;
}
LA2678最短子序列相关推荐
- [JAVA]寻找满足和的最短子序列(Minimum Size Subarray Sum)
题目来源:leetcode 题目描述: Given an array of n positive integers and a positive integer s, find the minimal ...
- UVa 11536 最短子序列(Smallest Sub-Array)
题意: 有n个0~m-1的整数组成一个序列.输入k,你的任务是尽量找到一个短一点的连续子序列使得该序列包含1-k的所有整数. 最大序列是生成的,生成在代码中 分析: 二分查找一个位置,长度a不成立 b ...
- 【BZOJ】4032: [HEOI2015]最短不公共子串(LibreOJ #2123)
[题意]给两个小写字母串A,B,请你计算: (1) A的一个最短的子串,它不是B的子串 (2) A的一个最短的子串,它不是B的子序列 (3) A的一个最短的子序列,它不是B的子串 (4) A的一个最短 ...
- nyoj 133 子序列(尺取法+离散化)
子序列 时间限制:3000 ms | 内存限制:65535 KB 难度:5 描述 给定一个序列,请你求出该序列的一个连续的子序列,使原串中出现的所有元素皆在该子序列中出现过至少1次. 如2 8 8 ...
- 字符串ababaaab的nextval数组值序列为_子序列解题模板:最长回文子序列
预计阅读时间:6 分钟 子序列问题是常见的算法问题,而且并不好解决. 首先,子序列问题本身就相对子串.子数组更困难一些,因为前者是不连续的序列,而后两者是连续的,就算穷举都不容易,更别说求解相关的算法 ...
- java最长回文子序列_算法--字符串:最长回文子序列
转自:labuladong公众号 子序列问题是常见的算法问题,而且并不好解决. 首先,子序列问题本身就相对子串.子数组更困难一些,因为前者是不连续的序列,而后两者是连续的,就算穷举都不容易,更别说求解 ...
- 两道小学生的题----1000: 梦里的难题、1002: 拳皇
黑色的飞鸟掠过天空,我站在城中,看时间燃成灰烬,哗哗作响...... 题目描述 生化危机血腥暴力的场面对小星星的冲击很大,晚上频繁地做起了梦,梦里他担负起拯救世人消灭僵尸的重任,眼看就能拿到消除 T ...
- 4.15 每周作业 —— 简单DP
免费馅饼 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submissi ...
- 1000: 梦里的难题
1000: 梦里的难题 时间限制: 1 Sec 内存限制: 128 MB 题目描述 生化危机血腥暴力的场面对小星星的冲击很大,晚上频繁地做起了梦,梦里他担负起拯救世人消灭僵尸的重任,眼看就能拿到消除 ...
最新文章
- 史上世界上最惨烈的几次股灾!
- 设置为true有什么区别_腻子粉和腻子膏到底有什么区别,腻子粉厂家来为你讲解...
- win7怎么启动对远程服务器的登陆,深度Win7旗舰版如何开启telnet服务使用远程登录...
- getmenuiteminfo无法读取内存_笔记本内存加装教程,看完包会!为了这篇文章,我把电脑都拆了!...
- Yii调用参数配置文件params
- OpenStack 的部署T版(三)——Glance组件
- c++数据结构中 顺序队列的队首队尾_数据结构与算法—队列详解
- IDEA的基本使用:让你的IDEA有飞一般的感觉 | CSDN 博文精选
- 使用Grunt构建自动化开发环境
- Linux下那些查找命令
- 编程修养 阅读笔记四
- 信息系统开发平台OpenExpressApp - 支持日志功能
- oracle数据库的重复数据处理
- 【个人笔记】OpenCV4 C++ 快速入门 23课
- 【进阶】PyTorch自定义CUDA算子教程与运行时间分析
- 梯度下降优化器小结(RMSProp,Momentum,Adam)
- Mstar的Monitor方案笔记(七)——EDID基本数据结构
- 翻译和本地化的区别及应用
- 抓住七月的尾巴,出门放松一下
- 举个栗子!Tableau 技巧(113):在工作表中嵌入可切换网页