๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Algorithm ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป/๋ฐฑ์ค€(BOJ)

[๋ฐฑ์ค€,c++] 11048๋ฒˆ - ์ด๋™ํ•˜๊ธฐ

by dkswnkk 2021. 10. 26.

 

 

11048๋ฒˆ: ์ด๋™ํ•˜๊ธฐ

์ค€๊ทœ๋Š” Nร—M ํฌ๊ธฐ์˜ ๋ฏธ๋กœ์— ๊ฐ‡ํ˜€์žˆ๋‹ค. ๋ฏธ๋กœ๋Š” 1ร—1ํฌ๊ธฐ์˜ ๋ฐฉ์œผ๋กœ ๋‚˜๋ˆ„์–ด์ ธ ์žˆ๊ณ , ๊ฐ ๋ฐฉ์—๋Š” ์‚ฌํƒ•์ด ๋†“์—ฌ์ ธ ์žˆ๋‹ค. ๋ฏธ๋กœ์˜ ๊ฐ€์žฅ ์™ผ์ชฝ ์œ— ๋ฐฉ์€ (1, 1)์ด๊ณ , ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์•„๋žซ ๋ฐฉ์€ (N, M)์ด๋‹ค. ์ค€๊ทœ๋Š”

www.acmicpc.net

#include <iostream>
using namespace std;
int dp[1001][1001];
int arr[1001][1001];
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
int n,m; cin>>n>>m;
for(int i=0; i<n; i++){
for(int k=0; k<m; k++){
cin>>arr[i][k];
}
}
dp[0][0]=arr[0][0];
for(int i=0; i<n; i++){
for(int k=0; k<m; k++){
if(i==0&&k==0) continue;
dp[i][k]=max(max(dp[i][k],dp[i-1][k]+arr[i][k]),max(dp[i][k-1]+arr[i][k],dp[i-1][k-1]+arr[i][k]));
}
}
cout<<dp[n-1][m-1];
}

GitHub

LinkedIn

GitHub

LinkedIn