QOJ.ac

QOJ

حد الوقت: 1.0 s حد الذاكرة: 256 MB مجموع النقاط: 100

#15575. Taxies

الإحصائيات

公司的一些员工因加班工作到深夜。其中 $K$($2 \le K \le 15$)名平时乘坐公共交通工具的员工请求公司经理为他们报销出租车费。现在有许多可用的出租车,经理可以为每位员工单独叫一辆出租车。然而,他觉得这样太贵了,因为一辆出租车可以容纳 1 到 4 名乘客,而让住得近的人合乘同一辆出租车会便宜得多。另一方面,经理认为,如果让某些员工在室外等待,而司机先送他们的同事回家再返回来接他们,这样太不礼貌了。因此,经理希望选择一种最便宜的方法将所有员工送回家,并满足以下约束条件:

  • 所有 $K$ 名员工被分成若干组,每组包含 1、2、3 或 4 个人;经理决定如何分组。
  • 同一组的员工合乘同一辆出租车。
  • 同组的所有人首先乘车前往其中一名成员的家,该成员在此下车;组内剩余的人(如果还有的话)继续前往下一位成员的家,依此类推。乘车顺序(谁是第 1 个、谁是第 2 个,等等)也由经理决定。
  • 经理本人不是这 $K$ 名员工之一,也不属于任何小组。他自己开车,并且不想与任何员工拼车。

公司 and 员工的家位于一个带权图的顶点上。图中的大多数边是无向的(双向道路),但有些可能是单向的(单向道路)。图中每条边的权重表示乘坐出租车沿该边行驶的费用。该图是强连通的,即从图中的每个顶点到任何其他顶点都存在一条路径。

出租车费用包括里程费 and 起步价。起步价按车收取,与行驶距离和乘客人数无关。

输入格式

第一行包含顶点数 $N$($5 \le N \le 20000$)和边数 $M$($N \le M \le 50000$)。

接下来有 $M$ 行,每行包含四个整数:

  • 第一个数是 1 或 2,表示单向或双向道路;
  • 接下来两个数 $u, v$($u \neq v, 1 \le v \le N, 1 \le u \le N$)表示连接的顶点(如果道路是单向的,则方向为从 $u$ 到 $v$);
  • 第四个数(范围在 5 到 5000 之间)表示该边的权重(乘坐出租车通过该边的费用)。

下一行包含起步价(范围在 500 到 50000 之间的整数)。

下一行包含公司所在顶点的编号(范围在 1 到 $N$ 之间)。

下一行包含员工人数 $K$($2 \le K \le 15$)。

最后一行包含 $K$ 个数字(每个数字范围在 1 到 $N$ 之间)—— 员工居住的顶点编号。不同的员工可能住在同一个顶点,但没有人住在公司所在的顶点。

输出格式

输出一个整数 —— 将所有员工送回家所需的最小总费用。

样例

输入样例 1

6 7
2 1 2 200
2 1 3 1000
2 1 4 1200
2 2 3 900
2 6 2 1300
2 6 4 200
2 4 5 100
1000
1
4
2 3 5 6

输出样例 1

4500

输入样例 2

6 7
2 1 2 200
2 1 3 1000
2 1 4 1200
2 2 3 900
2 6 2 1300
2 6 4 200
2 4 5 100
500
1
4
2 3 5 6

输出样例 2

3700

说明

在第一个样例中,当一辆出租车搭载所有 4 名员工并按照以下顺序行驶时,可以达到最小总费用 4500:先到第 2 名员工的家,然后是第 1 名、第 4 名和第 3 名。

在第二个样例中,当使用两辆出租车时,可以达到最小费用 3700:其中一辆车先去第 1 名员工的家,再去第 2 名员工的家;另一辆车先去第 3 名员工的家,再去第 4 名员工的家。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.