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

Số màu phân biệt trong cây con

Đề bài

Mô tả

Cho một cây gồm n đỉnh, gốc tại đỉnh 1. Mỗi đỉnh có một màu sắc.

Với mỗi đỉnh, hãy tính số lượng màu sắc phân biệt trong cây con gốc tại đỉnh đó.

Dữ liệu vào

Dòng đầu chứa số nguyên n.

Dòng thứ hai chứa n số nguyên c1,c2,,cn — màu sắc của từng đỉnh.

  • n1 dòng tiếp theo, mỗi dòng chứa hai số nguyên ab mô tả một cạnh của cây.

Dữ liệu ra

In ra n số nguyên, số thứ i là số màu phân biệt trong cây con gốc tại đỉnh i.

Ràng buộc

  • 1n2·105
  • 1ci109
  • 1a,bn

Ví dụ

Input Output Giải thích
5
2 3 2 2 1
1 2
1 3
3 4
3 5
3 1 2 1 1 Cây con đỉnh 1 gồm tất cả: màu {1,2,3} → 3. Đỉnh 3 gồm {2,2,1} → 2 màu. Đỉnh 2,4,5 chỉ có 1 màu.
4
1 2 1 3
1 2
1 3
1 4
3 1 1 1 Cây con đỉnh 1 chứa màu 1,2,3 → 3 màu phân biệt.

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