Проект

시간 제한2초메모리 제한1024 MB

요약
각 방의 작업 시간과 선행 제약이 주어질 때, 최대 k개의 방을 최소 시간에 완료하도록 선택하는 문제입니다.
난이도

어려움10점 중 8점

유형
동적 계획법, 트리, 그리디
정답자
아직 제출이 없습니다

문제

У артели по укладке квадратных плиток наступили тяжелые времена. Начальство сомневается в квалификации работников. Естественно, работники артели хотят доказать, что они --- лучшие из лучших. Для этого они разработали проект по искусственному повышению характеристик, используемых начальством для оценки продуктивности работ. Ключевым моментом в нем является выполнение отделки kk комнат в кратчайшие сроки.

На данный момент к ним поступили заказы на выполнение работ в nn комнатах. Про каждую комнату известно, какое минимальное количество дней потребуется для выполнения работ в ней. Артель не может работать более чем над одной комнатой в течение дня. Кроме того, есть еще одна трудность --- известно, что для каждой комнаты, кроме первой, укладку плитки в этой комнате обязательно нужно завершить прежде, чем начинать работы в какой-то другой комнате. Это правило было введено для согласования работ с другими артелями.

Помогите работникам артели по укладыванию квадратных плиток определить, какое минимальное количество времени уйдет на выполнение работ в kk комнатах.

입력

Первая строка входного файла содержит два целых числа nn и kk, разделенных пробелом (1≤n≤5⋅1041 \le n \le 5 \cdot 10^4, 1≤k≤401 \le k \le 40, k≤nk \le n). В следующей строке nn целых чисел t_it\_i (1≤t_i≤1071 \le t\_i \le 10^7) --- времена выполнения работ в комнатах. Каждая из следующих n−1n - 1 строк содержит целое число a_ia\_i --- номер комнаты, работы в которой нельзя начинать до окончания укладки плитки в ii-й комнате (2≤i2 \le i). Гарантируется, что существует план выполнения работ, позволяющий выполнить работы во всех комнатах.

출력

Выведите минимальное время, необходимое для выполнения работ в kk комнатах.

예제2

  1. 예제 1

    입력
    5 2
    1 2 3 4 5
    1
    1
    2
    2
    
    예상 출력
    7
    
  2. 예제 2

    입력
    5 3
    1 2 3 4 5
    1
    1
    2
    2
    
    예상 출력
    11