感觉自己dp这方面还需要加强啊。

显然一个合法的方案已定包含一条0-N+1的上行链(可以拼接得到),剩下的是一些环。

令dp[i][j]表示盖了前i个邮戳,并且从下行站走到上行站的次数-从上行站走到下行站的次数=j时,不计0-i的上行链的时间时的最小耗费。

j可能比较费解。形象一点,由于剩下的是一些环,那么环一定是i的上行站->i的下行站->j的下行站->i的下行站->i的上行站。环一定是有些整体在i的前面,或者整体在i的后面,或者跨过i,j就是跨过i的环的数量。

然后枚举第i个站点的走法:(上行站或下行站)->邮戳台->(下行站或下行站)共四种;再加上直接从上行站->下行站(包括反向)的转移。因此一共是六种。

AC代码如下:

#include<iostream>
#include<cstdio>
#include<cstring>
#define N 3005
using namespace std;int n,m; long long f[N][N];
void dn(int &x,int y){ if (y<x) x=y; }
int main(){scanf("%d%d",&n,&m); int i,j,x,y,u,v;memset(f,0x3f,sizeof(f));f[0][0]=0;for (i=1; i<=n; i++){scanf("%d%d%d%d",&x,&y,&u,&v);for (j=0; j<=n; j++) f[i-1][j]+=j*m<<1;for (j=0; j<=n; j++){if (j) f[i][j]=min(min(f[i-1][j-1],f[i][j-1])+y+u,f[i-1][j]+u+v);if (j<n) f[i][j]=min(f[i][j],f[i-1][j+1]+x+v);f[i][j]=min(f[i][j],f[i-1][j]+x+y);}for (j=n-1; j>=0; j--) f[i][j]=min(f[i][j],f[i][j+1]+x+v);}printf("%lld\n",f[n][0]+(n+1)*m);return 0;
}

by lych

2016.3.26

bzoj 4244: 邮戳拉力赛 动态规划相关推荐

  1. [BZOJ 4244] 邮戳拉力赛

    BZOJ传送门 Description IOI铁路是由N+2N+2N+2个站点构成的直线线路.这条线路的车站从某一端的车站开始顺次标号为0...N+10...N+10...N+1. 这条路线上行驶的电 ...

  2. BZOJ 4244 邮戳拉力赛 (DP)

    手动博客搬家: 本文发表于20181211 18:01:21, 原地址https://blog.csdn.net/suncongbo/article/details/84957907 为了防止我的博客 ...

  3. [DP] BZOJ 4244 邮戳拉力赛

    DP方程有点难懂 晕 #include<cstdio> #include<cstdlib> #include<cstring> #include<algori ...

  4. BZOJ 4244 邮戳拉力赛

    题意: 思路: 参考博客 https://blog.csdn.net/forever_shi/article/details/84931438 /*************************** ...

  5. LOJ #2878. 「JOISC 2014 Day2」邮戳拉力赛 动态规划+括号序列

    神题呀,我们观察到行走的方式一定是一条链+若干条环. 然后环可以看成是一对括号,所以来一个基于括号序的 DP. code: #include <bits/stdc++.h> #define ...

  6. java越野拉力赛_BZOJ 4244 邮戳拉力赛 (DP)

    为了防止我的博客被数学占领(一半以上的博文和数学相关),我决定添加几道非数学题的题解. 目前数学题比例: \(\frac{15}{32}=0.46875\) 扯淡结束 题意: 太长了自己看. 题解: ...

  7. bzoj4244: 邮戳拉力赛 dp

    Description IOI铁路是由N+2个站点构成的直线线路.这条线路的车站从某一端的车站开始顺次标号为0...N+1. 这条路线上行驶的电车分为上行电车和下行电车两种,上行电车沿编号增大方向行驶 ...

  8. [BZOJ4244]邮戳拉力赛

    Description IOI铁路是由N+2个站点构成的直线线路.这条线路的车站从某一端的车站开始顺次标号为0...N+1. 这条路线上行驶的电车分为上行电车和下行电车两种,上行电车沿编号增大方向行驶 ...

  9. 【BZOJ4244】邮戳拉力赛 DP

    [BZOJ4244]邮戳拉力赛 Description IOI铁路是由N+2个站点构成的直线线路.这条线路的车站从某一端的车站开始顺次标号为0...N+1. 这条路线上行驶的电车分为上行电车和下行电车 ...

最新文章

  1. 面试官问: 如何保证 MQ消息是有序的?
  2. cisco+路由器+固定外网IP与NAT+设置
  3. [汇编语言学习笔记][第二章寄存器]
  4. 谷歌警告:安卓再现高危漏洞 华为小米等可能被黑客完全控制
  5. 机器学习知识点(九)BP神经网络Java实现
  6. Android基于Docker容器的双系统多开实现和自动化部署
  7. [转]js 取得 Unix时间戳(Unix timestamp)
  8. 响应式web(一):什么是响应式web,异步调用,callback的本质,servlet3的异步
  9. printf格式化输出类型
  10. python获取表单数据的代码_使用flask和python从html表单获取表单数据
  11. webpack之基础篇(四):webpack-dev-server介绍
  12. 爬取https://sc.chinaz.com/tupian/的图片
  13. es - elasticsearch - search - DSL - specialized - pinned
  14. MySQL 为日期增加一个时间间隔
  15. 汉字转拼音(完全模式)
  16. URL传参多了%7Bfid%7D字符,在我使用{id}传参时拼接了多余字符串
  17. 群签名和环签名的区别_环签名,聚合签名
  18. Linux九阴真经之无影剑残卷2(磁盘存储和文件系统)
  19. 【Python】实现键盘鼠标动作录制和执行的小工具
  20. 为什么做微信视频直播?

热门文章

  1. 学习书法与国画的同学作品欣赏
  2. Nodejs学习沉淀(二)——核心功能模块理解
  3. 【SSL证书】【知识体系】【WebSocket】【Spring Boot 2.x】【DevOps 转型】| Chat · 预告
  4. keras.layers.Input()输入层解析
  5. html插入两张并排图片,如何在Word里面插两张并排的图?
  6. 国内科技公司不爱收购爱挖人?探索中外“贫富差距”背后的原因
  7. 计算机键盘上顿号在哪,电脑键盘上的顿号在哪个位置,最简单实用的电脑知识...
  8. 张顺就船内搜出前日 水浒传
  9. 数据包络分析--二阶段网络(考虑各阶段的公平性)
  10. client-go开发示例