Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

本质上就是一个floyd

Posted by liymouse at 2022-02-04 22:38:08 on Problem 1388
floyd的更新条件
a[i][j] == 0 || a[i][k] + a[k][j] < a[i][j]
表示通过点k可以改善ij的距离

但是如果存在另外一个k'使得
a[i][k] + a[k][j] == a[i][j]
表示,这个k'可以达到k一样的作用(通过k'也可以改善ij的距离)

如果把点k去掉,那么通过走k'也可以达到同样的最短路,
所以对于ij来说,存在2个或者2个以上的k,那么这些点都不是关键点(因为一个没了,可以走另外一个)

所以题目就是求对于每个点对ij,只存在一个k能改善ij的距离,那么这个k就是关键点。

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator