Tàu điện ngầm

Đề bài

Mô tả

Một hệ thống tàu điện ngầm được mô tả bởi n trạm và n đường ray (cạnh vô hướng), mỗi đường ray nối đúng hai trạm khác nhau. Giữa hai trạm bất kỳ có nhiều nhất một đường ray, và từ một trạm bất kỳ ta có thể đi tới mọi trạm còn lại bằng cách di chuyển dọc theo các đường ray.

Một đồ thị liên thông gồm n đỉnh và n cạnh luôn chứa đúng một chu trình đơn — gọi là đường vành đai. Với mỗi trạm i, hãy tính khoảng cách (số đường ray) ngắn nhất từ trạm đó tới một trạm bất kỳ nằm trên đường vành đai. Các trạm thuộc đường vành đai có khoảng cách bằng 0.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n (3≤n≤3000).
  • n dòng tiếp theo, mỗi dòng chứa hai số nguyên xi,yi (1≤xi,yi≤n, xi≠yi) mô tả một đường ray nối hai trạm xi và yi.

Dữ liệu đảm bảo đồ thị liên thông, có đúng n cạnh và không có cạnh trùng nhau.

Dữ liệu ra

In ra n số nguyên trên một dòng, cách nhau bởi dấu cách. Số thứ i là khoảng cách từ trạm i tới đường vành đai.

Ràng buộc

  • 3≤n≤3000
  • Đồ thị liên thông, có đúng n cạnh, không có cạnh bội.

Ví dụ

Input Output Giải thích
4
1 3
4 3
4 2
1 2
0 0 0 0 Toàn bộ 4 trạm tạo thành đường vành đai 1−2−4−3−1.
6
1 2
3 4
6 4
2 3
1 3
3 5
0 0 0 1 1 2 Đường vành đai là 1−2−3−1. Trạm 4 và 5 cách đai 1 ray, trạm 6 cách đai 2 ray (qua trạm 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