trang chủ / đề bài / hn_tst_26_e

Nâng cấp cổng

Đề bài

Mô tả

Hệ thống quản lý mạng lưới gồm N hành tinh được đánh số từ 1 đến N và M cổng dịch chuyển hai chiều, cổng thứ i nối hai hành tinh ui và vi, có ngưỡng chịu tải ci. Một tàu có mức năng lượng W chỉ đi qua được cổng có ci≥W.

Trung tâm điều khiển cần xử lý Q chuyến bay độc lập. Mỗi chuyến bay yêu cầu đưa một tàu có mức năng lượng W từ hành tinh s đến hành tinh t. Trong chuyến bay đó, trung tâm điều khiển có thể nâng cấp ngưỡng chịu tải tối đa của đúng một cổng bất kỳ lên vô hạn. Sự thay đổi không được giữ lại và không ảnh hưởng đến các chuyến bay khác.

Yêu cầu: Với mỗi chuyến bay, hãy xác định tàu có thể đi từ hành tinh s đến hành tinh t hay không nếu lựa chọn tối ưu cổng được nâng cấp.

Dữ liệu vào

  • Dòng đầu tiên chứa ba số nguyên N,M,Q (2≤N≤105; 1≤M≤2·105; 1≤Q≤105);
  • M dòng tiếp theo, dòng thứ i chứa ba số nguyên ui,vi,ci (1≤ui,vi≤N; 1≤ci≤109);
  • Q dòng cuối cùng, mỗi dòng chứa ba số nguyên s,t,W (1≤s,t≤N; s≠t; 1≤W≤109).

Dữ liệu đảm bảo đồ thị không có khuyên và không có đa cạnh.

Dữ liệu ra

Với mỗi chuyến bay, in YES nếu tàu có thể đến đích; ngược lại in NO.

Ràng buộc

  • 2≤N≤105; 1≤M≤2·105; 1≤Q≤105
  • 1≤ui,vi≤N; 1≤ci≤109
  • 1≤s,t≤N; s≠t; 1≤W≤109
  • Đồ thị không có khuyên và không có đa cạnh.

Subtasks

  • Subtask 1 (20% số điểm): ci=1 với mọi cổng và W=1 với mọi chuyến bay.
  • Subtask 2 (20% số điểm): N≤1000; M≤2000; Q≤1000.
  • Subtask 3 (20% số điểm): mọi chuyến bay có cùng mức năng lượng W.
  • Subtask 4 (20% số điểm): đồ thị là cây.
  • Subtask 5 (20% số điểm): không có ràng buộc thêm.

Ví dụ

Input Output Giải thích
7 5 4
1 2 3
2 4 5
2 5 6
1 3 7
6 7 4
1 4 2
4 3 4
5 3 7
1 6 1
YES
YES
NO
NO
Chuyến 1: đi từ 1 đến 4 với năng lượng 2 mà không cần nâng cấp cổng nào. Chuyến 2: đi từ 4 đến 3 với năng lượng 4, cần nâng cấp cổng 1−2. Chuyến 3: không thể đi từ 5 đến 3 với năng lượng 7 vì có hai cổng có ngưỡng nhỏ hơn 7. Chuyến 4: không thể vì hành tinh 1 và 6 không liên thông.
4 3 3
1 2 5
2 3 1
3 4 1
1 4 3
1 3 3
2 4 1
NO
YES
YES
Ví dụ thêm (không có trong đề gốc). Với W=3, đường từ 1 đến 4 phải qua hai cổng ngưỡng 1 nên không thể; từ 1 đến 3 chỉ cần nâng cấp cổng 2−3. Với W=1 mọi cổng đều đi được.

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