이동하기 4

시간 제한2초메모리 제한512 MB

요약
(0,0)에서 (N,M)까지 오른쪽이나 아래로만 이동하는 격자에서, c열에서 아래로 갈 때 Bc, r행에서 오른쪽으로 갈 때 Ar의 비용이 들며 총 비용의 최솟값을 구한다.
난이도

보통10점 중 6점

유형
동적 계획법, 그리디, 수학
정답자
아직 제출이 없습니다

문제

준규는 (N+1)×(M+1) 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있다. 미로의 가장 왼쪽 윗 방은 (0, 0)이고, 가장 오른쪽 아랫 방은 (N, M)이다.

준규는 현재 (0, 0)에 있고, (N, M)으로 이동하려고 한다. 준규가 (r, c)에 있으면, 문을 통해서 (r+1, c), (r, c+1)로 이동할 수 있다. 또, 미로 밖으로 나갈 수는 없다.

이번에는 문틈 사이에 쓰레기가 놓여 있다. 그래서 (r, c) 에서 (r+1, c)로 움직이거나, (r, c) 에서 (r, c+1)로 움직일 때 문틈에 놓여져있는 쓰레기를 모두 가져가야 한다. (r, c) 에서 (r+1, c) 로 움직일 때는 Bc, (r, c+1) 로 움직일 때는 Ar 개의 쓰레기를 가져가야 한다.

준규가 (N, M)으로 이동할 때, 가져와야 하는 쓰레기의 최솟값을 구하시오.

입력

첫째 줄에 미로의 크기 N, M이 주어진다. (1 ≤ N, M ≤ 500,000)

다음 줄에 N+1개의 정수 Ai가 주어진다. (1 ≤ Ai ≤ 109)

다음 줄에 M+1개의 정수 Bi가 주어진다. (1 ≤ Bi ≤ 109)

출력

첫째 줄에 준규가 (N, M)으로 이동할 때, 가져와야 하는 쓰레기의 양을 출력한다.

예제3

  1. 예제 1

    입력
    2 3
    60 20 90
    10 90 80 70
    
    예상 출력
    140
    
  2. 예제 2

    입력
    1 1
    1 1
    1 1
    
    예상 출력
    2
    
  3. 예제 3

    입력
    2 2
    1000000000 1000000000 1000000000
    1000000000 1000000000 1000000000
    
    예상 출력
    4000000000