Изменения рейтингов за последние раунды временно удалены. Скоро они будут возвращены. ×

D. Экзамены
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Впереди у студента Васи сессия, которая будет длиться n дней. Васе предстоит сдать экзамены по m предметам. Предметы пронумерованы от 1 до m.

Про каждый день известно, какой из m предметов можно сдать в этот день. Возможно, что в какой-то день нельзя сдавать ни один предмет. Однако в каждый день можно сдавать не более одного предмета.

В очередной день Вася может либо сдавать экзамен по тому предмету, который можно сдавать в этот день (сдача занимает весь день), либо готовиться весь день к экзамену по некоторому предмету, либо отдыхать.

Про каждый из предметов Вася знает число ai — количество дней, которые нужно готовиться, чтобы сдать экзамен по предмету номер i. Вася может переключаться между подготовкой к экзаменам, то есть необязательно готовиться непрерывно ai-е дней к экзамену номер i. Перемешивать порядок подготовки к экзаменам можно произвольным образом.

Перед вами стоит задача определить минимальный номер дня, в который Вася сможет закрыть сессию — то есть сдать экзамены по всем предметам, либо определить, что это невозможно сделать. Экзамен по каждому предмету нужно сдать ровно один раз.

Входные данные

В первой строке следует два целых положительных числа n и m (1 ≤ n, m ≤ 105) — длительность сессии в днях и количество предметов.

Во второй строке следует n целых чисел d1, d2, ..., dn (0 ≤ di ≤ m), где di равно номеру предмета, экзамен по которому можно сдать в день номер i. Если di равно 0, то в день номер i нельзя сдавать какой-либо экзамен.

В третьей строке следует m целых положительных чисел a1, a2, ..., am (1 ≤ ai ≤ 105), где ai равно количеству дней, которые нужно готовиться, чтобы сдать экзамен по предмету i.

Выходные данные

Выведите целое число — минимальный номер дня, в который Вася сможет сдать все экзамены. Если это невозможно, выведите -1.

Примеры
Входные данные
7 2
0 1 0 2 1 0 2
2 1
Выходные данные
5
Входные данные
10 3
0 0 1 2 3 0 2 0 1 2
1 1 4
Выходные данные
9
Входные данные
5 1
1 1 1 1 1
5
Выходные данные
-1
Примечание

В первом тестовом примере Вася может дейстовать следующим образом. В первый и второй день готовиться к экзамену номер 1 и сдать его в пятый день, а между этим подготовиться к экзамену номер 2 в третий день и сдать его в четвёртый.

Во втором тестовом примере Вася должен готовиться к экзамену номер 3 первые четыре дня и сдать его в пятый день. Затем в шестой день подготовиться к экзамену номер 2 и сдать его в седьмой день. После этого ему нужно подготовиться к экзамену номер 1 за восьмой день и сдать его в девятый день.

В третьей тестовом примере Вася не сможет сдать единственный экзамен, так как не успеет к нему подготовиться.