계수기
시간 제한2초메모리 제한512 MB
최댓값 m에 도달하면 1로 되돌아가는 n개의 계수기가 있다. 초기값을 목표값으로 바꾸는 데 필요한 최소 조작 횟수를 구한다. 한 번의 조작으로 연속한 계수기들을 하나씩 누를 수 있다.
문제
계수기 여러 개가 한 줄로 놓여 있다. 계수기의 버튼을 누르면 표시된 값이 1만큼 증가하고, 값이 이미 최댓값이면 1로 내려간다. 모든 계수기는 최댓값이 같은 같은 모델이다.

그림 D-1 계수기
각 계수기에 처음 표시된 값에서 시작해, 모든 표시값을 계수기마다 지정된 목표값으로 바꾸려고 한다. 그런데 여러 계수기의 버튼을 하나씩 누르는 일이 번거로워 특별한 도구를 만들었다. 이 도구를 쓰면 한 번의 조작으로 이웃한 하나 이상의 계수기 버튼을 각각 한 번씩 누를 수 있다. 한 번의 조작에서 연속해 놓여 있기만 하면 어느 위치든 임의의 개수만큼 계수기를 고를 수 있다.
계수기의 표시값을 목표값으로 바꾸는 데 필요한 조작 횟수의 최솟값은 얼마인가?
입력
입력은 여러 데이터셋으로 이루어지고, 각 데이터셋은 다음 형식이다.
n m
a1 a2 ... an
b1 b2 ... bn
각 데이터셋은 3줄이다. 첫 줄에는 n (1 ≤ n ≤ 1000)과 m (1 ≤ m ≤ 10000)이 주어진다. 각각 계수기의 개수와 계수기에 표시되는 최댓값이다. 둘째 줄에는 계수기의 초깃값 ai (1 ≤ ai ≤ m)가 공백으로 구분되어 주어진다. 셋째 줄에는 계수기의 목표값 bi (1 ≤ bi ≤ m)가 공백으로 구분되어 주어진다.
입력의 끝은 0 두 개가 있는 줄로 나타낸다. 데이터셋의 개수는 100을 넘지 않는다.
출력
각 데이터셋마다 모든 계수기가 목표값을 표시하게 하는 데 필요한 최소 조작 횟수를 한 줄에 출력한다.