| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 2 초 | 1024 MB | 57 | 35 | 28 | 68.293% |
Во время традиционной прогулки дядя Паша нашел массив из $n$ чисел. По пути домой он встретил своего хорошего друга Гришаню. У Гришани был свой массив с $X$ элементами. Вместе друзья решили пойти попить кофе, а также придумать, что делать с находкой.
Гришаня сразу сообразил, что было бы очень забавно разбить массив дяди Паши на $X$ непустых частей, каждая из которых состоит из нескольких подряд идущих элементов. Тогда дядя Паша сказал, что сумма каждой части должна быть не меньше, чем соответствующий ей по номеру элемент массива Гришани. Это оказалось так весело, что друзья решили посчитать разности между суммами элементов в каждой части массива дяди Паши и элементами массива Гришани. Теперь они решили разбить массив на части так, чтобы сумма этих разностей была минимальной из возможных.
Массив слишком большой, чтобы посчитать минимальную возможную сумму разностей вручную, а ноутбука с собой ни у кого из друзей не оказалось, поэтому они просят вас помочь. Вы должны написать программу, которая посчитает минимальную возможную сумму таких разностей.
В первой строке даны два числа $n,ドル $X$ (1ドル \le n \le 10^5, 1 \le X \le 100$) --- количество элементов в массиве дяди Паши и количество элементов в массиве Гришани соответственно.
Во второй строке содержаться разделенные пробелом $n$ чисел $a_i$ (1ドル \le a_i \le 10^4$) --- элементы массива дяди Паши. В третьей строке содержаться разделенные пробелом $X$ чисел $b_i$ (1ドル \le b_i \le 10^9$) --- элементы массива Гришани.
В первой строке выходного файла выведите минимальную возможную сумму. Если не существует такого разбиения, то выведите $-1$.
3 2 1 2 3 3 2
1
2 2 1 101 100 1
-1
В первом примере выгодно разбить массив, например, на части $\{1, 2\}$ и $\{3\}$