ZOJ 3714 Java Beans

来源:互联网 发布:电视直播软件live官网 编辑:程序博客网 时间:2024/05/22 03:07

There are N little kids sitting in a circle, each of them are carrying some java beans in their hand. Their teacher want to selectM kids who seated in M consecutive seats and collect java beans from them.

The teacher knows the number of java beans each kids has, now she wants to know the maximum number of java beans she can get fromM consecutively seated kids. Can you help her?

Input

There are multiple test cases. The first line of input is an integer T indicating the number of test cases.

For each test case, the first line contains two integers N (1 ≤ N ≤ 200) andM (1 ≤ MN). Here N and M are defined in above description. The second line of each test case containsN integers Ci (1 ≤ Ci ≤ 1000) indicating number of java beans theith kid have.

Output

For each test case, output the corresponding maximum java beans the teacher can collect.

Sample Input

25 27 3 1 3 96 613 28 12 10 20 75

Sample Output

16158
求连续M个数的最大和 环型

#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;int main(){    int T,n,m,a[10000];    scanf("%d",&T);    while(T--)    {        scanf("%d%d",&n,&m);        for(int i=1;i<=n;i++)        {            scanf("%d",&a[i]);            a[n+i]=a[i];        }        int sum=0;        int s=0;        for(int i=1;i<=m;i++)sum+=a[i];        for(int i=m+1;i<n+m;i++)        {            s=max(sum,s);            sum=sum-a[i-m]+a[i];        }        s=max(sum,s);        printf("%d\n",s);    }    return 0;}



0 0
原创粉丝点击