Охоронець Антон
Антон працює охоронцем. Він відповідає за об'єктів, які пронумеровані цілими числами від до . Також є дорога. -та дорога з'єднує об'єкти та , а також має довжину . З кожного об'єкту можна дістатися до об'єкта .
На початку Антон знаходиться в об'єкті .
Визначимо пріоритетність кожного об'єкта, як мінімальну кількість доріг, яку потрібно пройти від цього об'єкта до об'єкта . Наприклад, для об'єкта це число буде ; для всіх об'єктів, які напряму з'єднані з — це буде ; і так далі.
Антону потрібно зробити обхід всіх об'єктів. Йому потрібно спочатку відвідати усі об'єкти, які мають пріоритетність , потім, які мають пріоритетність , і так далі. Якщо є кілька об'єктів з однаковою пріоритетністю, то Антон може самостійно вибирати у якому порядку їх відвідувати. Зверніть увагу, що відвідувати будь-який об'єкт з пріоритетом він може лише, якщо відвідав усі об'єкти з пріоритетом .
Знайдіть мінімальну відстань, яку йому прийдеться пройти.
Вхідні дані
Перший рядок містить одне ціле число ().
Другий рядок містить цілих чисел , які показують, що є дорога від об'єкта до об'єкта ();
Третій рядок містить цілих чисел , які є довжинами доріг між об'єктами та ().
Гарантується, що з об'єкта можна дійти до всіх інших об'єктів.
Вихідні дані
Виведіть одне ціле число — відповідь на задачу.
Приклади
Оцінювання
( бали): ;
( балів): ;
( балів): не більше об'єктів мають однакову пріоритетність;
( балів): не більше об'єктів мають однакову пріоритетність;
( балів): ;
( балів): ;
( балів): без додаткових обмежень.