AG. [JOI 2020 Final] 奥运公交 / Olympic Bus

    Type: RemoteJudge 1000ms 256MiB

[JOI 2020 Final] 奥运公交 / Olympic Bus

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

给定一个 NNMM 边的有向图,每条边从 UiU_i 指向 ViV_i,经过这条边的代价为 CiC_i

点编号为 11NN

我们可以翻转一条边,即让他从 UiU_i 指向 ViV_i 变为从 ViV_i 指向 UiU_i,这时会有 DiD_i 的代价产生。

你要从点 11 到点 NN,再从点 NN 回到点 11,你想知道,通过翻转一条边,或者不翻转,能得到的最小代价和为多少?

输入格式

第一行两个整数 N,MN,M 代表点数和边数。

接下来 MM 行每行四个整数 Ui,Vi,Ci,DiU_i,V_i,C_i,D_i 代表一条边。

输出格式

一行一个整数代表最小代价和。无解输出 1-1

4 5
1 2 4 4
1 3 2 1
4 3 1 2
4 1 6 1
2 4 2 5
10
4 10
1 2 4 4
1 2 4 4
1 3 2 1
1 3 2 1
4 3 1 2
4 3 1 2
4 1 6 1
4 1 6 1
2 4 2 5
2 4 2 5
10
4 4
1 2 0 4
1 3 0 1
4 3 0 2
4 1 0 1
2
4 5
1 2 4 4
1 3 2 4
4 3 1 5
4 1 6 1
2 4 2 5
12
4 5
2 1 4 4
1 3 2 1
4 3 1 2
4 3 6 1
2 4 2 5
-1

提示

样例 1 解释

最优解为翻转第二条边,总代价为:

  • 翻转的代价 11
  • 从点 11 到点 NN 再返回的最短路径 124311 \to 2 \to 4 \to 3 \to 1,代价为 4+2+1+2=94+2+1+2=9

样例 4 解释

不一定需要翻转某条边。

样例 5 解释

从点 44 到点 33 的边有两条。

数据规模与约定

本题采用捆绑测试。

  • Subtask 1(5 pts):M1000M \le 1000
  • Subtask 2(11 pts):MM 为偶数,且 U2i=U2i1U_{2i}=U_{2i-1}V2i=V2i1V_{2i}=V_{2i-1}C2i=C2i1C_{2i}=C_{2i-1}
  • Subtask 3(21 pts):Ci=0C_i=0
  • Subtask 4(63 pts):无特殊限制。

对于 100%100\% 的数据:

  • 2N2002 \le N \le 200
  • 1M5×1041 \le M \le 5 \times 10^4
  • 1UiN1 \le U_i \le N
  • 1ViN1 \le V_i \le N
  • UiViU_i \ne V_i
  • 0Ci1060 \le C_i \le 10^6
  • 0Di1090 \le D_i \le 10^9

说明

翻译自 第 19 回日本情報オリンピック 本選 D オリンピックバス

【蒙青创】2025年CSP-J/S 冲刺【图论冲刺S300+】

Not Claimed
Status
Done
Problem
49
Open Since
2025-9-25 0:00
Deadline
2025-11-30 23:59
Extension
24 hour(s)