시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
2 초 | 512 MB | 552 | 317 | 263 | 63.373% |
준규는 (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) 로 움직일 때는 Ar, (r, c+1) 로 움직일 때는 Bc 개의 쓰레기를 가져가야 한다.
준규가 (N, M)으로 이동할 때, 가져와야 하는 쓰레기의 최솟값을 구하시오.
첫째 줄에 미로의 크기 N, M이 주어진다. (1 ≤ N, M ≤ 500,000)
다음 줄에 N개의 정수 Ai가 주어진다. (1 ≤ Ai ≤ 109)
다음 줄에 M개의 정수 Bi가 주어진다. (1 ≤ Bi ≤ 109)
첫째 줄에 준규가 (N, M)으로 이동할 때, 가져와야 하는 쓰레기의 양을 출력한다.
3 4 60 20 90 10 90 80 70
420
1 1 1 1
2
2 2 1000000000 1000000000 1000000000 1000000000
4000000000