trang chủ / đề bài / jzzhucity

Đóng tuyến đường sắt

Đề bài

Mô tả

Một đất nước có n thành phố đánh số từ 1 đến n, trong đó thành phố 1 là thủ đô. Có m con đường bộ hai chiều; con đường thứ i nối hai thành phố ui và vi với độ dài xi. Ngoài ra còn có k tuyến đường sắt, tuyến thứ i nối trực tiếp thủ đô với thành phố si theo cả hai chiều và có độ dài yi.

Chính phủ muốn đóng cửa càng nhiều tuyến đường sắt càng tốt để tiết kiệm chi phí, nhưng phải giữ nguyên khoảng cách ngắn nhất từ mọi thành phố về thủ đô. Hãy tính số tuyến đường sắt nhiều nhất có thể đóng.

Lưu ý rằng giữa hai thành phố có thể có nhiều con đường bộ, và cũng có thể có nhiều tuyến đường sắt cùng dẫn tới một thành phố.

Dữ liệu vào

  • Dòng đầu chứa ba số nguyên n, m, k.
  • m dòng tiếp theo, mỗi dòng chứa ba số nguyên ui, vi, xi mô tả một con đường bộ.
  • k dòng tiếp theo, mỗi dòng chứa hai số nguyên si, yi mô tả một tuyến đường sắt.

Dữ liệu đảm bảo từ mọi thành phố đều có thể đi tới thủ đô.

Dữ liệu ra

Một số nguyên duy nhất: số tuyến đường sắt nhiều nhất có thể đóng.

Ràng buộc

  • 2≤n≤105
  • 1≤m≤3·105
  • 1≤k≤105
  • 1≤ui,vi≤n, ui≠vi, 1≤xi≤109
  • 2≤si≤n, 1≤yi≤109

Ví dụ

Input Output Giải thích
5 5 3
1 2 1
2 3 2
1 3 3
3 4 4
1 5 5
3 5
4 5
5 5
2 Khoảng cách ngắn nhất tới các thành phố 2,3,4,5 lần lượt là 1,3,5,5. Tuyến tới thành phố 3 dài 5>3 nên thừa. Tuyến tới thành phố 5 dài 5 nhưng đường bộ 1−5 cũng dài 5 nên cũng thừa. Riêng tuyến tới thành phố 4 phải giữ lại vì nếu bỏ đi thì khoảng cách tăng từ 5 lên 7.
2 2 3
1 2 2
2 1 3
2 1
2 2
2 3
2 Khoảng cách ngắn nhất tới thành phố 2 là 1, chỉ đạt được nhờ tuyến đường sắt dài 1. Ta giữ đúng một tuyến đó và đóng hai tuyến còn lại.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0