POJ3061(尺取法)

题意:给定一个序列,找出最短的子序列长度,使得其和大于或等于S。

思路:尺取法,顾名思义,设两个“指针”,先初始化为0,然后后移r到ans>s,再移左端点l。

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define inf 0x3f3f3f3f
#define ll long long
const int maxn=100005;
const double eps=1e-8;
const double PI = acos(-1.0);
#define lowbit(x) (x&(-x))
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n,s,a[maxn];
        scanf("%d%d",&n,&s);
        for(int i=0;i

 

你可能感兴趣的:(ACM技巧,尺取法)