GIÁ TRỊ KHÁC NHAU

Cho một cây có \(n\) đỉnh và \(n\ - \ 1\) cạnh. Mỗi đỉnh i được gán một giá trị nguyên \(c_{i}\).

Yêu cầu: Với mỗi đỉnh \(i\), hãy tính số lượng giá trị khác nhau xuất hiện trong cây con gốc tại đỉnh đó (bao gồm cả chính đỉnh \(i\)).

Dữ liệu vào:

  • Dòng đầu tiên chứa số nguyên \(n\) (\(1 \leq \ n \leq \ 100000\)) — số lượng đỉnh của cây.

  • Dòng thứ hai chứa n số nguyên \(c_{1},\ c_{2},\ ...,\ c_{n}\ (1 \leq \ c_{i} \leq \ n\)) — giá trị của từng đỉnh.

  • \(n\ - \ 1\) dòng tiếp theo, mỗi dòng gồm hai số nguyên \(u\)\(\ v\) \((1 \leq \ u,\ v \leq \ n),\) biểu thị có một cạnh nối giữa đỉnh \(u\) và đỉnh \(v\).

Kết quả:

In ra \(n\) số nguyên, số thứ \(i\) là số lượng giá trị khác nhau trong cây con gốc tại đỉnh \(i.\) Các số cách nhau bởi dấu cách.

Ví dụ:

Input Output
5
2 3 2 2 1
1 2
1 3
3 4
3 5
3 1 2 1 1

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. hnam_107 (10/14)
  2. hutieu (8/13)
  3. vuong1903 (7/12)
Trong 7 ngày
  1. ndhdang091011 (48/56)
  2. trungdimid (40/55)
  3. bophanha789 (39/91)
Trong 30 ngày
  1. ndhdang091011 (209/264)
  2. cosu (91/170)
  3. trungdimid (82/150)
Thống kê
AC/Sub: 120817/226949
Pascal: 18142
C++: 157988
Python: 50747
Lượt xem/tải tests: 42758

Lưu Hải Phong - 2020
[email protected]