trang chủ / đề bài / voi09_stnode

Nút st - xung yếu

Đề bài

Mô tả

Bản đồ giao thông của hành tinh X bao gồm n thành phố được đánh số từ 1 đến n và m đoạn đường một chiều nối các cặp thành phố, giữa hai thành phố bất kỳ có không quá một đoạn đường cùng chiều nối chúng. Thành phố s là thủ đô của hành tinh, từ đó có thể di chuyển theo các đoạn đường nối giữa các thành phố để đến bất cứ thành phố nào trong số các thành phố còn lại. Thành phố t là một điểm du lịch ưa thích của người dân thủ đô. Hàng năm có một lượng lớn người dân thủ đô đến nghỉ ngơi tại điểm du lịch hấp dẫn này. Vì thế, trong các mùa du lịch ách tắc giao thông trên đường đi từ s đến t thường xuyên xảy ra tại một số nút giao thông. Do đó, Bộ Giao thông của hành tinh X muốn xác định các nút giao thông này.

Ta nói thành phố a (a≠s và a≠t) là nút st-xung yếu nếu mọi đường đi từ s đến t đều phải đi qua a.

Yêu cầu: Hãy xác định số lượng các nút st-xung yếu.

Dữ liệu vào

  • Dòng đầu tiên chứa 4 số nguyên dương n,m,s,t (3≤n≤104, m≤105);
  • m dòng tiếp theo mô tả sơ đồ giao thông trên hành tinh X: Dòng thứ i chứa hai số nguyên ui, vi cho biết có đoạn đường một chiều đi từ thành phố ui đến thành phố vi, i=1,2,…,m. Các số liên tiếp trên cùng dòng được ghi cách nhau bởi ít nhất một dấu cách.

Dữ liệu ra

Một số nguyên duy nhất là số lượng nút st-xung yếu.

Ràng buộc

  • 3≤n≤104, m≤105, s≠t.
  • 1≤ui,vi≤n, ui≠vi; không có hai đoạn đường cùng chiều nối cùng một cặp thành phố.
  • Từ s đi được tới mọi thành phố.

Subtasks

  • Subtask 1 (60% số test): 3≤n≤100.
  • Subtask 2 (40% số test): 100<n≤104.

Mỗi subtask gồm nhiều test, mỗi test được chấm điểm riêng.

Ví dụ

Input Output Giải thích
7 10 1 5
1 2
1 3
2 4
3 4
4 5
5 6
6 2
6 7
7 3
7 5
1 Mọi đường đi từ 1 đến 5 đều qua thành phố 4 (đường 7→5 chỉ tới được 7 sau khi đã qua 5).
5 5 1 4
1 2
2 3
3 4
1 3
4 5
1 Thành phố 3 là nút st-xung yếu; thành phố 2 thì không vì có đường 1→3→4.

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