Good Bye 2014 |
---|
Закончено |
Наступает Новый год и Jaehyun решил прочитать в наступающем 2015 году множество книг (в отличие от этого года, в котором он не преуспел). У него есть n книг, пронумерованных целыми числами от 1 до n. Вес i-й (1 ≤ i ≤ n) книги равняется wi.
Дом Jaehyun'а слишком маленький для книжного шкафа, поэтому он хранит свои n книг в вертикальной стопке. Когда он хочет прочитать некоторую книгу x, он выполняет следующие шаги:
Он решил читать книги на протяжении m дней. На j-й (1 ≤ j ≤ m) день он прочитает книгу, которой присвоен номер bj (1 ≤ bj ≤ n). Чтобы прочитать книгу, он использует последовательность действий, описанную выше. Возможно, что он несколько раз будет читать одну и ту же книгу.
Составив такой план, юноша понял, что суммарный вес книг, которые ему надо поднять за m дней, может быть слишком велик. Поэтому он решил поменять порядок книг в стопке до Нового года и минимизировать суммарный вес. Книги можно уложить в стопку в любом возможном порядке. Обратите внимание, что вес книги, которую он хочет почитать на очередном шаге, не учитывается среди поднятых на этом шаге. Можете ли вы помочь ему достичь желаемого?
В первой строке записано два целых числа через пробел, n (2 ≤ n ≤ 500) и m (1 ≤ m ≤ 1000) — количество книг и количество дней, в которые Jaehyun почитал бы книги.
Во второй строке записано n целых чисел через пробел w1, w2, ..., wn (1 ≤ wi ≤ 100) — вес каждой книги.
В третьей строке записано m целых чисел через пробел b1, b2, ..., bm (1 ≤ bj ≤ n) — порядок книг, которые парень хотел бы прочитать. Обратите внимание, что он может читать одну и ту же книгу более одного раза.
Выведите минимальный суммарный вес книг, которые надо поднять парню, достижимый перестановкой уложенных книг.
3 5
1 2 3
1 3 2 3 1
12
Приведем картинку, описывающую пример. Каждая вертикальная колонка обозначает уложенные книги.
Название |
---|