2 条题解
-
2
雷迪森安德镇特们,你们嚎! 别紫菜我😕 (蒟蒻恐惧)
正经的来了
思路: 首先,
雪的教训,应该没人看见万万不可那边小删哪个,不行看这个 TNND老孙居然只给这么点分。555。。所以应该怎么做呢
其实吧,这题允许模拟每种删法最后的结果,找最大的就行,
肥肠的原始具体思路在代码里。看好了,
劳资蒟蒻要上代码了😄#include<bits/stdc++.h> using namespace std; long long a[2000006],s[2000005],r=-1e18,l=1e18,n,k;//l、r必须开long long,不然爆掉 int main(){ freopen("delete.in","r",stdin); freopen("delete.out","w",stdout); cin>>n>>k; for(int i=1;i<=n;i++){ cin>>a[i]; s[i]=s[i-1]+a[i];//通过前缀和可以O(1)模拟 } for(int i=0;i<=k;i++){//挨个比较 r=max(r,s[n-k+i]-s[i]); l=min(l,s[n-k+i]-s[i]); } cout<<maxx<<" "<<minn; return 0; }
OK写完了。
好消息,好消息
这次的代码没有坑!所以点个 绿色的 赞再走吧,谢谢
信息
- ID
- 785
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 1
- 标签
- 递交数
- 116
- 已通过
- 22
- 上传者