博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3061:Subsequence 查找连续的几个数,使得这几个数的和大于给定的S
阅读量:6804 次
发布时间:2019-06-26

本文共 1666 字,大约阅读时间需要 5 分钟。

Subsequence
Time Limit: 1000MS   Memory Limit: 65536K
Total Submissions: 10172   Accepted: 4160

Description

A sequence of N positive integers (10 < N < 100 000), each of them less than or equal 10000, and a positive integer S (S < 100 000 000) are given. Write a program to find the minimal length of the subsequence of consecutive elements of the sequence, the sum of which is greater than or equal to S.

Input

The first line is the number of test cases. For each test case the program has to read the numbers N and S, separated by an interval, from the first line. The numbers of the sequence are given in the second line of the test case, separated by intervals. The input will finish with the end of file.

Output

For each the case the program has to print the result on separate line of the output file.if no answer, print 0.

Sample Input

210 155 1 3 5 10 7 4 9 2 85 111 2 3 4 5

Sample Output

23

题意是给出一个序列,要求从这个序列中找出几个连续的数,使得这些数的和大于给定的S,求这个数的最小值。

和51nod上面的建设国家很像,都是建立一个队列,然后不断查找。

代码:

#include 
#include
#include
#include
#include
#include
#pragma warning(disable:4996)using namespace std;long long n,s,a[1000005];int main(){ //freopen("i.txt","r",stdin); //freopen("o.txt","w",stdout); int test,i,ans,start; long long sum; scanf("%d",&test); while(test--) { scanf("%lld%lld",&n,&s); for(i=1;i<=n;i++) { scanf("%lld",a+i); } ans=n+1; a[0]=0; sum=0; start=1; for(i=1;i<=n;i++) { sum += a[i]; while(sum>s) { sum = sum - a[start]; start++; } if(sum+a[start-1]>s && i-(start-1)+1

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/lightspeedsmallson/p/4899535.html

你可能感兴趣的文章
Anti-Anti-Spider
查看>>
Java 序列化的高级认识
查看>>
WSL 编程环境配置
查看>>
Reveal配置及上架前配置
查看>>
MySQL可使用GRANT和REVOKE的权限设置
查看>>
iOS应用架构谈 好文
查看>>
Hexo 搭建个人博客
查看>>
Java多态对象的类型转换
查看>>
N*M网格中两对角有多少种不同的路径?(递归)
查看>>
迷宫出逃
查看>>
据说这样可以改变谷歌浏览器的滚动条的样式
查看>>
使用 db2diag 工具来分析 db2diag 日志文件
查看>>
Ubuntu 13.04 64位运行32位程序出现问题
查看>>
promise(then、catch、resolve、reject、race、all、done、finally)
查看>>
Ubuntu 下 配置 jdk1.7
查看>>
思维提升:思维广度,深度,高度,远度
查看>>
服务器空指针不打印堆栈信息解决方法
查看>>
《Linux 系列》- VM上安装CentOS7
查看>>
Python 学习笔记 - socketserver源代码剖析
查看>>
ubuntu关于Java环境变量的 简单记录
查看>>