谁是偷窃犯

测试数据来自 system/1961

作业已超过截止时间,您无法递交本题目。

时间限制:1秒  内存限制:256M


【题目描述】

  警擦局长家里的保险柜被盗窃,警察们正试图从 \(K\) 名有前科的嫌疑人里找出那个罪犯,嫌疑人编号为 \(1..K\),幸运的是,路口的监控拍下被盗 \(T\) 秒前的路人的情况。这样警察就能通过嫌疑人的位置来判断谁有足够的时间来局长家。

  这片社区有 \(N\) 个居民小区,标号 1 到 \(N\),有 \(M\) 条双向道路连接他们,通过这些道路需要的时间用一个整数表示,标号为 1 的小区是局长家。

  给出嫌疑人所在的社区,请判断哪些有可能是偷窃犯。

【输入格式】

  第一行输入四个整数:\(N,M,K,T\),它们的意义如题目描述。
  接下来 \(M\) 行,每行三个整数描述一条路,起点、终点和通过时间。
  再接下来 \(K(1≤K≤N)\) 行,第 \(i\) 个整数,表示编号为 \(i\) 的嫌疑人所在的社区标号。

【输出格式】

  输出可能是偷窃犯的数目,接下来的每一行输出一个嫌犯的编号(按由小到大的顺序输出)。

【输入输出样例】

 Input

7 6 5 8
1 4 2
1 2 1
2 3 6
3 5 5
5 4 6
1 7 9
1
4
5
3
7

 Output

4
1
2
3
4

【数据限制】

  对于 \(100\%\) 的数据,\(1≤N≤5000\),\(1≤M≤50000\),\(1≤T≤100000\)。

【来源】

  Mr.he

最短路径算法练习题(一)

未认领
状态
已结束
题目
10
开始时间
2025-05-30 00:00
截止时间
2025-08-09 23:59
可延期
24.0 小时