trang chủ / bài tập / cowgather

Tập Hợp Đàn Bò

Đề bài

Mô tả

N con bò kết nối với nhau qua N1 cặp bạn bè tạo thành cây (mọi bò đều kết nối với nhau qua chuỗi bạn bè). Các bò phải rời đi lần lượt từng con theo quy tắc: chừng nào còn ít nhất hai con bò, mỗi con còn lại phải có ít nhất một bạn cũng còn lại (tức là bò rời đi phải là của cây con còn lại).

Ngoài ra có M ràng buộc thứ tự: mỗi ràng buộc (ai,bi) yêu cầu bò ai phải rời đi trướcbi.

Với mỗi con bò i từ 1 đến N, hãy xác định: liệu bò i có thể là con cuối cùng rời đi (thỏa mãn tất cả ràng buộc) hay không?

Dữ liệu vào

  • Dòng 1: hai số nguyên NM (1N,M105)
  • N1 dòng tiếp theo: mỗi dòng hai số nguyên xi,yi — cặp bạn bè (cạnh của cây)
  • M dòng tiếp theo: mỗi dòng hai số nguyên ai,bi — bò ai phải rời trước bò bi

Dữ liệu ra

  • N dòng, dòng i chứa 1 nếu bò i có thể là con cuối cùng, ngược lại chứa 0.

Ràng buộc

  • 1N,M105

Ví dụ

Input Output Giải thích
5 1
1 2
2 3
3 4
4 5
2 4
0
0
1
1
1
Cây là đường thẳng 1-2-3-4-5, ràng buộc: 2 trước 4. Bò 3, 4, 5 có thể là cuối: ví dụ thứ tự hợp lệ khi bò 5 cuối: 1→2→4→3→5 (2 trước 4 ✓). Bò 1 và 2 không thể vì bò 2 có ràng buộc đi trước bò 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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0