序号:5922
子串之和
Time Limit:1s Memory Limit:128MB
题目描述
给出n个数的数列,求数列中每一个长度为m的子串之和。
输入格式
输入共两行。
第一行共两个数N、M,由空格隔开。含义如前述。
第二行共N个数。
输出格式
一个整数。
输入输出样例
输入 #1
5 3
1 1 1 1 1
输出 #1
3 3 3
说明/提示
数据范围1≤n,m≤106数列元素
#include<bits/stdc++.h>
using namespace std;
const long long N=2e6+10;
long long ans,n,m,a[N],p[N],cnt;
int main(){
ios::sync_with_stdio(false);
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
p[i]=p[i-1]+a[i];
}
for(int i=m;i<n;i++){
cout<<p[i]-p[i-m]<<" ";
}
cout<<p[n]-p[n-m];
return 0;
}