博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
题解 P1614 【爱与愁的心痛】
阅读量:5786 次
发布时间:2019-06-18

本文共 863 字,大约阅读时间需要 2 分钟。

前缀和。

#重点在一个小小的常数优化
但是数据大了以后比楼下们跑的会快!!!
楼下用前缀和的题解都是跑了两遍循环。
而实际上一遍循环就可以呀。
就是加一段这个

if(i>=m)    if(low>(ans[i]-ans[i-m]))        low=ans[i]-ans[i-m];

 

直接维护一个low值就好。每次输入都判一下就简单很多。
直接上完整代码。

#include
#include
#include
using namespace std;///头文件们不说int n,m;long long ans[3005];//用于储存前缀和的数组int num[3005];//储存数据long long low=0x3f3f3f3f;//要维护的对象。最小值int main(){ cin>>n>>m;//输入 for(int i=1;i<=n;i++) { cin>>num[i];//输入 ans[i]=ans[i-1]+num[i];//计算前缀和 if(i>=m)//好了亮点在这!!!不用再扫一遍。//就是可以截取以这个点为重终点的区间时 { if(low>(ans[i]-ans[i-m]))//如果以前的最小值小于这一段的最小值。 { low=ans[i]-ans[i-m];//更新 } } } if(low==0x3f3f3f3f)//如果发现没有更新 { printf("0");//那就是0; return 0; } printf("%lld",low);//直接输出 return 0;//程序拜拜

 

不过用scanf还会快一点

转载地址:http://gptyx.baihongyu.com/

你可能感兴趣的文章
VB关键字总结
查看>>
android代码生成jar包并混淆
查看>>
一个不错的vue项目
查看>>
屏蔽指定IP访问网站
查看>>
python学习 第一天
查看>>
根据毫秒数计算出当前的“年/月/日/时/分/秒/星期”并不是件容易的事
查看>>
python的图形模块PIL小记
查看>>
shell变量子串
查看>>
iOS的主要框架介绍 (转载)
查看>>
react报错this.setState is not a function
查看>>
poj 1183
查看>>
从根本解决跨域(nginx部署解决方案)
查看>>
javascript实现的一个信息提示的小功能/
查看>>
Centos7.x:开机启动服务的配置和管理
查看>>
HTML5 浏览器返回按钮/手机返回按钮事件监听
查看>>
xss
查看>>
iOS:百度长语音识别具体的封装:识别、播放、进度刷新
查看>>
JS获取服务器时间并且计算距离当前指定时间差的函数
查看>>
华为硬件工程师笔试题
查看>>
jquery居中窗口-页面加载直接居中
查看>>