Rải sỏi

Xem dạng PDF

Gửi bài giải


Điểm: 0,31 (OI)
Giới hạn thời gian: 0.38s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Xét trò chơi rải sỏi với một người chơi như sau:

Cho cây ~T~ và một đống sỏi gồm ~K~ viên. Ở mỗi bước người ta lấy ~1~ viên sỏi từ đống sỏi và đặt vào một nút lá tuỳ ý. Nếu nút ~p~ có ~r~ nút lá và tất cả các nút lá đều đã có sỏi thì người ta gom tất cả các viên sỏi ở các nút lá lại, đặt ~1~ viên ở nút ~p~, xoá các nút lá và trả ~r - 1~ viên sỏi còn lại vào đống sỏi.

Trò chơi kết thúc khi đã đặt được ~1~ viên sỏi vào nút gốc

Yêu cầu: cho cây ~T~, xác định số viên sỏi tối thiểu cần có để trò chơi có thể kết thúc. Cây có ~n~ nút ~(n \leq 400)~, nút gốc được đánh số 1.

Input

  • Dòng đầu: số ~n~.
  • Một số dòng tiếp theo, mỗi dòng có dạng: ~i~ ~m~ ~i_1~ ~i_2~ ... ~i_{m}~. Trong đó ~m~ là số nút con của nút ~i~; ~i_1~, ~i_2~, ..., ~i_{m}~: các nút con của nút ~i~.

Output

  • Số lượng viên sỏi ít nhất cần có.

Sample Input

7
1 2 2 3
2 2 5 4
3 2 6 7

Sample Output

3

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.