본문 바로가기

백준/다이나믹 프로그래밍

이동하기

728x90

www.acmicpc.net/problem/11048

 

11048번: 이동하기

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

www.acmicpc.net

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int candymap[1001][1001];
int check[1001][1001];
int main() {
	int n;
	int m;

	cin >> n;
	cin >> m;
	memset(candymap, 0, sizeof(candymap));
	memset(candymap, 0, sizeof(check));
	for (int i = 1; i <= n; i++) {
	for (int j = 1; j <=m; j++) {
	cin >> candymap[i][j];

	}
	}
	for (int i = 1; i <= n; i++) {
	for (int j = 1; j <=m; j++) {

	int res = max(check[i - 1][j - 1], max(check[i - 1][j], check[i][j - 1]));
	check[i][j] = res + candymap[i][j];
	}
	}
	cout << check[n][m] << endl;
	return 0;
}

'백준 > 다이나믹 프로그래밍' 카테고리의 다른 글

평범한 배낭  (0) 2021.02.17
파일 합치기  (0) 2021.01.22
1,2,3 더하기 4  (0) 2021.01.21
팰린드롬?  (0) 2021.01.20
점프점프  (0) 2021.01.19