题解:

感觉贪心水平有所提高。。

首先比较显然的事情是我们可以枚举最深进行到哪一层

我们会发现,当且仅当该层是最小值才会使用决策,

并且是从该层的左上,走到右下

另外中间步骤就是(好难描述啊)一个单调下降序列,每个会走最多的向右走的步数,然后中间的点只走一次  (这句话应该正常人是无法理解的)

但是处理起来还是比较简单的,我们考虑从上一层到这一层实际上就是有一个多往右走一格,所以维护前缀最小值

代码:

#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define IL inline
#define rint register ll
#define rep(i,h,t) for (rint i=h;i<=t;i++)
#define dep(i,t,h) for (rint i=t;i>=h;i--)
const ll N=2e5;
const ll INF=1e18;
ll a[N],n,f[N],ans=INF;
int main()
{
freopen("1.in","r",stdin);
freopen("1.out","w",stdout);
ios::sync_with_stdio(false);
cin>>n;
rep(i,,n+) cin>>a[i];
ll mina=INF;
dep(i,n+,)
{
if (i==n+) f[i]=a[i];
else f[i]=f[i+]+a[i]+mina;
if (mina>=a[i])
{
ans=min(ans,f[i]*+(*i-)*a[i]);
mina=a[i];
}
}
cout<<ans<<endl;
return ;
}

最新文章

  1. Liferay 6.2 改造系列之九:修改用户信息填写规则
  2. JPA的Column注解总结
  3. Struts2 cookie的存取
  4. centos 6.5关闭NetworkManager
  5. verilog中连续性赋值中的延时
  6. hdu4708
  7. CODEFORCES ROUND #273 DIV2
  8. [转]How to create an anonymous IDA PRO database (.IDB)
  9. 【一天一道LeetCode】#114. Flatten Binary Tree to Linked List
  10. adb环境配置+常用adb命令+Logcat命令的用法+手动进行文件比对的方法+批量挪bug
  11. 手机上的m3u8视频(缓存)怎么转成MP4?
  12. Java并发程序设计(七)乐天派:无锁
  13. [转]skynet Lua中的协程
  14. mes平台的一些方法
  15. VS常用快捷鍵
  16. VMware Coding Challenge: Removing Duplicates Entries
  17. 关于bootstrap的认识
  18. Activiti学习记录(五)
  19. C#结构体和类的区别(转)
  20. 用WEKA进行数据挖掘

热门文章

  1. 题解-USACO18DEC Sort It Out
  2. Centos 6.x/7.x yum安装php5.6.X(最新版)
  3. 激活函数Sigmoid、Tanh、ReLu、softplus、softmax
  4. planning深度剖析
  5. CSRFGuard工具介绍
  6. CSS3 Hover 动画特效
  7. OpenStack实践系列④计算服务Nova
  8. SQL Server循环
  9. MS SQL Server 增删改查
  10. android中的LaunchMode详解----四种加载模式