题目名称 | 737. [网络流24题] 汽车加油行驶 |
---|---|
输入输出 | trav.in/out |
难度等级 | ★★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 8 |
题目来源 | Makazeu 于2012-04-05加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:68, 提交:146, 通过率:46.58% | ||||
Youngsc | 100 | 0.005 s | 0.12 MiB | C++ |
Samle | 100 | 0.010 s | 0.12 MiB | C++ |
卜卜 | 100 | 0.018 s | 0.92 MiB | C++ |
thomount | 100 | 0.035 s | 9.75 MiB | C++ |
infinityedge | 100 | 0.039 s | 1.28 MiB | C++ |
longgod | 100 | 0.039 s | 39.83 MiB | C++ |
Rec | 100 | 0.040 s | 8.94 MiB | C++ |
yyb | 100 | 0.042 s | 21.28 MiB | C++ |
infinityedge | 100 | 0.044 s | 1.28 MiB | C++ |
可以的. | 100 | 0.044 s | 1.48 MiB | C++ |
关于 汽车加油行驶 的近10条评论(全部评论) | ||||
---|---|---|---|---|
狗屎啊!强制消费
CSU_Turkey
2017-12-30 15:57
4楼
| ||||
最短路,注意C不包含A(话说题干写的清清楚楚,我还能看成包含A,QAQ)
| ||||
分层图最短路
_Itachi
2016-09-22 14:33
2楼
| ||||
披着网络流外衣的最短路
|
给定一个$N$*$N$ 的方形网格,设其左上角为起点◎,坐标为(1,1),$X$ 轴向右为正,$Y$轴向下为正,每个方格边长为1,如图所示。一辆汽车从起点◎出发驶向右下角终点▲,其坐标为($N$,$N$)。在若干个网格交叉点处,设置了油库,可供汽车在行驶途中加油。汽车在行驶过程中应遵守如下规则:
(1)汽车只能沿网格边行驶,装满油后能行驶$K$ 条网格边。出发时汽车已装满油,在起点与终点处不设油库。
(2)汽车经过一条网格边时,若其$X$ 坐标或$Y$ 坐标减小,则应付费用B,否则免付费用。
(3)汽车在行驶过程中遇油库则应加满油并付加油费用$A$。
(4)在需要时可在网格点处增设油库,并付增设油库费用C(不含加油费用$A$)。
(5)(1)~(4)中的各数$N$、$K$、$A$、$B$、$C$均为正整数,且满足约束:$2 <= N <= 100$,$2 <= K <= 10$。
设计一个算法,求出汽车从起点出发到达终点的一条所付费用最少的行驶路线。
第一行是$N$,$K$,$A$,B,C的值。
第二行起是一个$N$*$N$ 的$0/1$ 方阵,每行$N$ 个值,至$N+1$ 行结束。
方阵的第$i$ 行第$j$ 列处的值为$1$ 表示在网格交叉点($i$,$j$)处设置了一个油库,为$0$ 时表示未设油库。各行相邻两个数以空格分隔。
输出最小费用。
9 3 2 3 6 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0
12