题目描述

护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥。因为街道是一条单行道,所以任何车辆都不能超车。桥能承受一个给定的最大承载量。为了控制桥上的交通,桥两边各站一个指挥员。护卫车队被分成几个组,每组中的车辆都能同时通过该桥。当一组车队达到了桥的另一端,该端的指挥员就用电话通知另一端的指挥员,这样下一组车队才能开始通过该桥。每辆车的重量是已知的。任何一组车队的重量之和不能超过桥的最大承重量。被分在同一组的每一辆车都以其最快的速度通过该桥。一组车队通过该桥的时间是用该车队中速度最慢的车通过该桥所需的时间来表示的。问题要求计算出全部护卫车队通过该桥所需的最短时间值。

输入输出格式

输入格式:

输入文件第一行包含三个正整数(用空格隔开),第一个整数表示该桥所能承受的最大载重量(用吨表示);第二个整数表示该桥长度(用千米表示);第三个整数表示该护卫队中车辆的总数(n<1000)。接下来的几行中,每行包含两个正整数W和S(用空格隔开),W表示该车的重量(用吨表示),S表示该车过桥能达到的最快速度(用千米/小时表示)。车子的重量和速度是按车子排队等候时的顺序给出的。

输出格式:

输出文件应该是一个实数,四舍五入精确到小数点后1位,表示整个护卫车队通过该桥所需的最短时间(用分钟表示)。

输入输出样例

输入样例#1:

100 5 10
40 25
50 20
50 20
70 10
12 50
9 70
49 30
38 25
27 50
19 70

输出样例#1:

75.0

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

DP~

#include<cstdio>
#include<iostream>
using namespace std;
#define ll long longll len,wei,n,w[1001],v[1001],sum[1001],minn[1001][1001];
double f[1001];int main ()
{scanf ("%lld%lld%lld",&wei,&len,&n);for(int i=1;i<=n;i++) scanf("%lld%lld",&w[i],&v[i]),sum[i]=sum[i-1]+w[i],minn[i][i]=v[i];for(int i=1;i<n;i++)for(int j=i+1;j<=n;j++) minn[i][j]=min(v[j],minn[i][j-1]);for(int i=1;i<=n;i++){f[i]=(double)len/v[i]+f[i-1];for(int j=i-1;j>=1;j--)if(sum[i]-sum[j-1]<=wei) f[i]=min(f[i],f[j-1]+(double)len/minn[j][i]);else break;}printf("%.1lf\n",60*f[n]);return 0;
}

洛谷 P1594 护卫队相关推荐

  1. 洛谷1594 护卫队

    洛谷1594 护卫队 本题地址: http://www.luogu.org/problem/show?pid=1594 题目描述 护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥.因为街道是 ...

  2. 洛谷1594 护卫队_区间dp_题解

    护卫队 出自洛谷题库 https://www.luogu.com.cn/problem/P1594 [问题描述] 不是具体题目 大概就是有n个车要过河,只有一个桥(理论上只能单向通行,其实不用管对面) ...

  3. 洛谷1594 护卫队(动态规划) 解析

    题目 护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥.因为街道是一条单行道,所以任何车辆都不能超车.桥能承受一个给定的最大承载量.为了控制桥上的交通,桥两边各站一个指挥员.护卫车队被分成几 ...

  4. 洛谷1594 护卫队 (st算法)

    评测链接:http://www.luogu.org/problem/show?pid=1594 题目描述 Description 护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥.因为街道是 ...

  5. P1594 护卫队-动态规划

    护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥.因为街道是一条单行道,所以任何车辆都不能超车.桥能承受一个给定的最大承载量.为了控制桥上的交通,桥两边各站一个指挥员.护卫车队被分成几个组, ...

  6. 洛谷-题解 P2672 【推销员】

    独门思路!链表加优先队列! 这题一望,贪心是跑不掉了,但是我贪心并不好,所以想到了一个复杂一些但思路更保稳的做法 思路: 1 因为是离线操作,所以我们可以倒着求,先求x=n的情况,因为那样直接就知道了 ...

  7. 洛谷 P1142 轰炸

    洛谷 P1142 轰炸 题目描述 "我该怎么办?"飞行员klux向你求助. 事实上,klux面对的是一个很简单的问题,但是他实在太菜了. klux要想轰炸某个区域内的一些地方,它们 ...

  8. 洛谷 P1387 最大正方形

    P1387 最大正方形 题目描述 在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长. 输入输出格式 输入格式: 输入文件第一行为两个整数n,m(1<=n,m<=10 ...

  9. 洛谷P2763 试题库问题

    题目:https://www.luogu.org/problemnew/show/P2763 题目描述 «问题描述: 假设一个试题库中有n道试题.每道试题都标明了所属类别.同一道题可能有多个类别属性. ...

最新文章

  1. 【网络流24题】解题报告:E 、圆桌问题(最大流求二分图多重匹配)
  2. 10个数冒泡排序流程图_(立下flag)每日10道前端面试题01
  3. kettle的安装与连接mysql(包含mysql8)简单使用,
  4. SSL与OpenSSL介绍
  5. Linux安装/卸载软件教程
  6. js设计模式-组合模式
  7. Jedis Cluster源码分析
  8. 2019 6.30学习笔记
  9. Linux服务器安装JavaWeb环境(四) Sentinel,Xxl-Job,Seata
  10. 【转载】对SVM的个人理解---浅显易懂
  11. listView的最简单的使用方法
  12. MySQL卸载不干净问题
  13. 解决output directory already exists
  14. MySQL 报OperationalError: (1130, “XX‘ is not allowed to connect to this MySQL server“)的正确解决方法
  15. 培养孩子讲故事的心得
  16. 计算机word基础操作知识
  17. 利用公网IP访问部署在阿里云服务器的spring boot项目(一)
  18. 中国大茴香行业利润及销量增长情况报告(新版)2021-2026年
  19. 读《互联网创业的四种玩家》有感
  20. python树结构字典_Python 数据结构——解析树及树的遍历

热门文章

  1. 《质量免费》读书笔记(陆续更新)
  2. 以英文逗号隔开的数字(每个数字可保留两位小数)字符串的正则表达式写法
  3. 【重要通知】中国图象图形学学会2022年度系列奖励推荐工作启动
  4. 腾讯云服务器不同账号迁移(不同云迁移腾讯云参考)
  5. 5SHX0660F0001 IGCT ABB 5SHX0660F0001 3BHL00386P0101
  6. java基础巩固-宇宙第一AiYWM:为了维持生计,编程语言番外篇之机器学习(项目预测模块总结:线性回归算法、逻辑回归分类算法)~整起
  7. 【小波分析】三、正交小波的构造
  8. 【云原生 | Kubernetes 系列】--持续交付和持续部署GITOPS(上)
  9. php农产品防伪追溯系统源码
  10. 【人工智能 Open AI】怎样实现身体和心灵的完美和谐?