#aBC243E. [ABC243E] Edge Deletion

[ABC243E] Edge Deletion

AT_abc243_e [ABC243E] Edge Deletion

题目描述

给定一个有 NN 个顶点、MM 条边的简单连通无向图。
ii 条边连接顶点 AiA_i 和顶点 BiB_i,长度为 CiC_i

请删除若干条边,使得满足以下条件。请你求出最多可以删除多少条边。

  • 删除边后,图仍然是连通的。
  • 对于所有顶点对 (s,t)(s, t),删除前后顶点 ss 和顶点 tt 之间的距离不变。

输入格式

输入以如下格式从标准输入给出。

NN MM
A1A_1 B1B_1 C1C_1
A2A_2 B2B_2 C2C_2
\vdots
AMA_M BMB_M CMC_M

输出格式

请输出答案。

输入输出样例 #1

输入 #1

3 3
1 2 2
2 3 3
1 3 6

输出 #1

1

输入输出样例 #2

输入 #2

5 4
1 3 3
2 3 9
3 5 3
4 5 3

输出 #2

0

输入输出样例 #3

输入 #3

5 10
1 2 71
1 3 9
1 4 82
1 5 64
2 3 22
2 4 99
2 5 1
3 4 24
3 5 18
4 5 10

输出 #3

5

说明/提示

注释

简单连通无向图是指既简单又连通且边无方向的图。
图是简单的,意味着图中没有自环和重边。
图是连通的,意味着对于图中任意两个顶点 s,ts, t,都可以通过若干条边从 ss 走到 tt
顶点 ss 和顶点 tt 之间的距离,指的是从 sstt 的最短路径长度。

数据范围

  • 2N3002 \leq N \leq 300
  • N1MN(N1)2N-1 \leq M \leq \frac{N(N-1)}{2}
  • 1Ai<BiN1 \leq A_i < B_i \leq N
  • 1Ci1091 \leq C_i \leq 10^9
  • iji \neq j,则 (Ai,Bi)(Aj,Bj)(A_i, B_i) \neq (A_j, B_j)
  • 给定的图是连通的。
  • 所有输入均为整数。

样例解释 1

删除边之前,所有顶点对之间的距离如下:

  • 顶点 11 和顶点 22 之间的距离为 22
  • 顶点 11 和顶点 33 之间的距离为 55
  • 顶点 22 和顶点 33 之间的距离为 33
    即使删除第 33 条边,所有顶点对之间的距离都不会改变。此外,无法再删除多于 11 条边而满足题意,因此答案为 11

样例解释 2

无法删除任何一条边。

由 ChatGPT 4.1 翻译