欢迎来到endl的博客hhh☀☾☽♡♥

浏览器标题切换
把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end

最大の和(洛谷 AT2412)

题意

读入n个整数的数列a1,a2,…,an和正整数k(1<=k<=n),请输出连续排列的k个整数的和的最大值

输入

第一行是正整数n(1<=n<=100000)和正整数k(1<=k<=n) 第二行以后的第1+i(1<=i<=n)至最后一行为数列

输出

仅一行,仅包括最大值。

样例输入

5 3 2 5 -4 10

样例输出

11


这道题在洛谷上的难度可是普及-诶,所以说直接手动上个前缀和就AC啦——

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int n,k,ans;
 4 int a[100010];
 5 int main()
 6 {
 7     cin>>n>>k;
 8     for(int i=1;i<=n;i++)
 9     {
10         cin>>a[i];
11         a[i]+=a[i-1];
12     }
13     for(int i=k;i<=n;i++)
14         ans=max(ans,a[i]-a[i-k]);
15     cout<<ans<<endl;
16     return 0;
17 }

 

posted @ 2019-08-10 09:43  endl\n  阅读(206)  评论(0编辑  收藏  举报