[Tuyên Quang - TST - 2025] Bài 6: Khám phá vũ trụ

Xem dạng PDF

Gửi bài giải

Điểm: 70,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Tí và Tèo là hai phi hành gia của trung tâm vũ trụ Quốc Tế. Họ đang tham gia một sứ mệnh quan trọng: khám phá các hành tinh xa xôi để thu thập năng lượng phục vụ cho Trái đất.

Có ~n~ hành tinh được đánh số từ 1 đến ~n~ mà Tí và Tèo có thể hạ cánh. Khi khám phá hành tinh thứ ~i~, họ sẽ thu được ~x_i~ đơn vị năng lượng nếu ~x_i > 0~ hoặc sẽ mất đi ~|x_i|~ đơn vị năng lượng nếu ~x_i < 0~ do điều kiện khắc nghiệt.

Tuy nhiên, không phải hành tinh nào cũng có thể đến ngay lập tức. Một số hành tinh chỉ có thể hạ cánh sau khi đã khám phá xong một hành tinh khác. Cụ thể, với mỗi hành tinh thứ ~i~ có tham số ~p_i~ (~0 \le p_i < i~), nếu ~p_i = 0~ hành tinh ~i~ có thể khám phá bất kỳ lúc nào mà không phụ thuộc vào hành tinh khác, ngược lại nếu ~p_i \neq 0~ thì muốn đến hành tinh ~i~, họ phải đến hành tinh ~p_i~ trước.

Ban đầu, con tàu vũ trụ của Tí và Tèo có ~s~ đơn vị năng lượng. Trong suốt hành trình, năng lượng trên tàu không bao giờ được âm. Mục tiêu của họ là khám phá một số hành tinh sao cho tổng lượng năng lượng thu được là lớn nhất có thể.

Yêu cầu: Hãy lập trình giúp Tí và Tèo tính toán lượng năng lượng tối đa mà họ có thể thu được sau chuyến khám phá các hành tinh.

Input

  • Dòng 1: Chứa hai số nguyên ~n, s~ (~1 \le n \le 3 \times 10^5~; ~0 \le s \le 10^9~).
  • Dòng thứ ~i~ trong ~n~ dòng sau mỗi dòng gồm hai số nguyên ~x_i, p_i~ (~|x_i| \le 10^9~; ~0 \le p_i < i~; ~i = 1, 2, \dots, n~).

Output

  • Ghi ra một số nguyên duy nhất là năng lượng tối đa có thể thu được.

Sample Input 1

6 1
3 0
-3 1
-5 0
2 1
6 3
-4 5

Sample Output 1

6

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.