码迷,mamicode.com
首页 > 其他好文 > 详细

Subsequence

时间:2017-12-02 22:08:26      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:isp   seq   efi   lap   分享   print   while   algo   pre   

 

 

技术分享图片

 

技术分享图片
 1 #include <iostream>
 2 #include <cstring>
 3 #include <cmath>
 4 #include <cstdio>
 5 #include <algorithm>
 6 using namespace std;
 7 #define LL long long
 8 const int maxn = 100010;
 9 const int inf = 0x3f3f3f3f;
10 LL a[maxn], b[maxn];
11 int main(){
12     int t;
13     //freopen("in.txt", "r", stdin);
14     scanf("%d", &t);
15     while(t--){
16         int n, s;
17         scanf("%d %d", &n, &s);
18         b[0] = 0;
19         for(int i = 1; i <= n; i++) {
20             scanf("%lld", &a[i]);
21             b[i] = b[i - 1] + a[i];
22         }
23         int ans = inf;
24         for(int i = 1; i <= n; i++){
25             if(b[i] < s) continue;
26             int temp = b[i] - s;
27             int id = lower_bound(b + 1, b + 1 + n, temp) - b;
28             if(b[id] == temp) while(b[id + 1] == temp) id++;
29             else{
30                 id--;
31             }
32             //cout<<i<<"  ----------  "<<id<<" =++"<<endl;
33             ans = min(ans, i - id);
34         }
35         if(ans == inf) ans = 0;
36         printf("%d\n", ans);
37     }
38 }
View Code

 

Subsequence

标签:isp   seq   efi   lap   分享   print   while   algo   pre   

原文地址:http://www.cnblogs.com/yijiull/p/7955655.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!