P5638 【CSGRound2】光骓者的荣耀
作者:互联网
P5638 【CSGRound2】光骓者的荣耀
题解:
由题意可知枚举i=1~n-k,且i+k~n两段的和求最小值,纯暴力时间O(n2),此题会TLE,预处理前缀和,可以加快两点的和求解时间为O(n),注意数据大小要long long 类型。
#include<bits/stdc++.h> using namespace std; const int maxn=1000010; long long a[maxn]; int main() { int n,k; scanf("%d %d",&n,&k); for (int i=1;i<n;i++) { scanf("%lld",&a[i]); a[i]+=a[i-1]; } long long ans=a[n-1]; for (int i=k;i<n;i++) { ans=min(ans,a[n-1]-(a[i]-a[i-k])); } cout<<ans<<endl; }
标签:int,CSGRound2,荣耀,long,maxn,P5638 来源: https://www.cnblogs.com/smghj/p/15974441.html