GUEST - Mời khách dự tiệc
Dữ liệu vào: Standard input
Dữ liệu ra: Standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: Ngapt

Công ty trách nhiệm hữu hạn "Vui vẻ" có n cán bộ đánh số từ 1 tới n. Cán bộ thứ i có đánh giá độ vui tính là hi. Ngoại trừ giám đốc công ty, mỗi người đều có một thủ trưởng trực tiếp của mình.

Bạn cần giúp công ty mời một nhóm cán bộ đến dự dạ tiệc "Những người thích đùa" sao cho tổng đánh giá độ vui tính của những người dự tiệc là lớn nhất, với yêu cầu: trong số những người được mời không đồng thời có mặt nhân viên cùng thủ trưởng trực tiếp của người đó.

Dữ liệu: Vào từ file văn bản GUEST.INP

  • Dòng đầu tiên ghi số cán bộ công ty: n (2 <= n <=10000)
  • n dòng tiếp theo, dòng thứ i gồm hai số tự nhiên bi, hi cho ta thông tin, người thứ i có thủ trưởng trực tiếp là bi và độ vui tính là hi. Nếu như b­i = 0 thì ta hiểu i là giám đốc công ty.

Kết quả: Ghi ra file văn bản GUEST.OUT

  • Dòng 1: Ghi số người được mời (k) và tổng độ vui tính của những người đó (m)
  • k dòng tiếp, mỗi dòng ghi số hiệu một người được mời tới dự tiệc.

Các số trên một dòng của Input/Output File được ghi cách nhau ít nhất một dấu cách

Dữ liệu vào được cho đúng đắn: không tồn tại một dãy x1, x2, ..., xp, xp+1 = x1 mà người i là thủ trưởng trực tiếp của người i + 1 (1 <= i <= p) .

Không nhất thiết phải mời giám đốc công ty

Ví dụ:

GUEST.INP

 

GUEST.OUT

10

2 9

3 7

4 8

0 10

4 2

5 11

6 6

6 4

4 6

9 6

 

 

4 36

1

4

6

10

 

 

Ví dụ

Back to Top