과거 카자흐스탄에는 실크로드라는 교역로가 있었다.
실크로드에는 도시가 N+1개 있고, 서쪽부터 차례로 도시 0, 도시 1, ..., 도시 N이다. 도시 i−1과 도시 i (1≤i≤N) 사이의 거리는 Di이다.
무역상 JOI는 도시 0에서 출발해 서쪽에서 동쪽으로 도시를 차례로 지나 도시 N까지 가야 한다. 이 이동을 M일 안에 끝내야 한다. JOI는 하루마다 다음 두 가지 중 하나를 고른다.
이동하는 날에는 피로도가 쌓인다. j일째 (1≤j≤M) 날씨의 나쁜 정도는 Cj이고, 도시 i−1에서 도시 i로 j일째에 이동하면 피로도가 Di×Cj만큼 쌓인다. 대기하는 날에는 피로도가 쌓이지 않는다.
JOI가 M일 안에 도시 N에 도착할 때 쌓이는 피로도 총합의 최솟값을 구하라.
첫째 줄에 정수 N, M (1≤N≤M≤1000)이 공백으로 구분되어 주어진다. 실크로드에 도시가 N+1개 있고, JOI가 도시 0에서 도시 N까지 M일 안에 가야 한다는 뜻이다.
다음 N개 줄 중 i번째 줄에는 정수 Di (1≤Di≤1000)가 주어진다. 도시 i−1과 도시 i 사이의 거리다.
다음 M개 줄 중 j번째 줄에는 정수 Cj (1≤Cj≤1000)가 주어진다. j일째 날씨의 나쁜 정도다.
JOI가 M일 안에 도시 N에 도착할 때 쌓이는 피로도 총합의 최솟값을 한 줄에 출력한다.
첫 번째 예제에서 피로도 총합을 최소로 만드는 방법은 다음과 같다.
이때 피로도 총합은 300+375+450=1125이고, 이보다 작게 만들 수는 없다.