BZOJ_3427_Poi2013 Bytecomputer_DP

Description

给定一个{-1,0,1}组成的序列,你可以进行x[i]=x[i]+x[i-1]这样的操作,求最少操作次数使其变成不降序列。

Sample Input

6
-1 1 0 -1 0 1

Sample Output

3


分析:容易知道最后的序列中一定只有-1,0,1

f[i][j]表示当前在第i个人,把这个数变成j的最小花费。

枚举这一位和前一位都是啥,满足能转移的条件即可。

代码:

#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
#define N 1000050
int a[N],f[N][3],n;
int main() {
int i;
scanf("%d",&n);
memset(f,0x3f,sizeof(f));
for(i=1;i<=n;++i) scanf("%d",&a[i]);
f[1][a[1]+1]=0;
for(i=2;i<=n;++i) {
if(a[i]==-1) {
f[i][0]=f[i-1][0];
//f[i][1]=f[i-1][2]+1;
f[i][2]=f[i-1][2]+2;
}else if(a[i]==0) {
f[i][0]=f[i-1][0]+1;
f[i][1]=min(f[i-1][1],f[i-1][0]);
f[i][2]=f[i-1][2]+1;
}else {
f[i][0]=f[i-1][0]+2;
f[i][1]=f[i-1][0]+1;
f[i][2]=min(min(f[i-1][0],f[i-1][1]),f[i-1][2]);
}
}
int tmp=min(min(f[n][0],f[n][1]),f[n][2]);
if(tmp>10000000) {
puts("BRAK");
}else printf("%d\n",tmp);
}

BZOJ_3427_Poi2013 Bytecomputer_DP的更多相关文章

随机推荐

  1. mysql性能优化之-innodb_flush_log_at_trx_commit

    innodb_flush_log_at_trx_commit是配置MySql日志何时写入硬盘的参数: 一.参数值说明 0:log buffer将每秒一次地写入log file中,并且log file的 ...

  2. 【.Net架构】BIM软件架构03:Web管控平台MVC架构

    一.前言        上一篇讲述的是将BIM平台后台架构CoreService.sln,该解决方案主要作用是对管控平台的核心业务进行封装,然后让前端的ApiController去调用该解决方案中的对 ...

  3. Android Selector原理

    android的selector对于android开发者而言再熟悉不过了,只要定义一个drawable目录下定义一个selector的xml文件,在布局文件中引用这个xml文件或者在代码中setBac ...

  4. 窗口函数解决数据岛问题(mysql暂无窗口函数,可以通过用户变量解决窗口函数问题)

    数据岛问题: 有表: create table dataisland (id int)  insert into  dataisland values(1),(2),(3),(7),(11),(12) ...

  5. ffmpeg 在windows 上编译

    我在网上看到了一些资料,但是很多都不怎么全,而且 总会碰到这样或那样的问题,下面是我的一些经验,分享一下,当然也参考了大侠们的东西呵呵! 环境: OS:windows mingw +yasm+fmpe ...

  6. android 开发中,经常遇到http://dl-ssl.google.com/ 无法访问的问题解决

    window - android sdk manager 在选择某个版本sdk安装时,总是出现http://dl-ssl.google.com/无法链接的问题,那是因为qiang太高了,不过也还是有办 ...

  7. 什么是Java Bean

    刚才看java中的注解,老是说注解引入的是个java Bean,那我就要问了,什么是Java Bean? 知乎引用:https://www.zhihu.com/question/19773379下杨博 ...

  8. Java开源生鲜电商平台-盈利模式详解(源码可下载)

    Java开源生鲜电商平台-盈利模式详解(源码可下载) 该平台提供一个联合买家与卖家的一个平台.(类似淘宝购物,这里指的是食材的购买.) 平台有以下的盈利模式:(类似的平台有美菜网,食材网等) 1. 订 ...

  9. 让 Homebrew 走代理更新 + brew 管理 node 版本

    0.前言 环境:MacOS 背景:整理下今天所做的配置. 1. 让 Homebrew 走代理更新 brew update 就卡住了,即使开了 shadowsocks 也不行.因为 shadowsock ...

  10. 使用ssh keys实现免验证登陆远程服务

    使用ssh keys实现免验证登陆远程服务========================Created 星期四 10 五月 2018 引言------------------程序员或者服务器运维人员 ...