Есть n стульев...
시간 제한1초메모리 제한1024 MB
너비 합이 H 이상이 되도록 의자를 골라 나열할 때 인접한 의자 높이 차의 최댓값을 최소로 만든다.
문제
Влад наконец-то достиг позиции тимлида в команде, но теперь у него совсем нет времени на дорогу домой, и ему придется спать в офисе. К сожалению, не все IT-компании могут позволить себе просторный и удобный коворкинг, в котором можно подремать, поэтому Влад будет спать на офисных стульях.
В офисе есть стульев, -й из которых имеет высоту и ширину . Влад планирует выбрать любой набор офисных стульев и расположить в ряд, чтобы на них можно было лечь. Рост Влада равен , поэтому, чтобы он мог удобно лежать, необходимо, чтобы суммарная ширина выбранных стульев была не меньше , то есть
Очевидно, что спать на стульях разной высоты неудобно. Назовем неудобностью выбранного набора максимальную разность высот двух соседних стульев в ряду, то есть . Если набор состоит из одного стула, его неудобность равна .
Помогите Владу выбрать набор стульев так, чтобы на ряду из них можно было лежать, а неудобность этого ряда была как можно меньше.
입력
В первой строке ввода через пробел даны два целых числа и --- количество стульев и рост Влада (; ).
Во второй строке ввода через пробел перечислены целых чисел --- высоты стульев (). В третьей строке в том же формате перечислены целых чисел , равных ширине стульев ().
Гарантируется, что не превосходит суммы всех .
출력
Выведите единственное число --- минимальное возможное неудобство среди всех подходящих наборов.
힌트
В первом примере нужно выставить стулья и в любом порядке.
Во втором примере можно выбрать, например, следующие наборы: , . Обратите внимание, что порядок стульев в наборе важен: неудобность набора равна , что больше, чем для набора .