[TRIANGLEPATH] 삼각형 위의 최대경로
PS/종만북2018. 4. 10. 01:51
### DP ###
[TRIANGLEPATH] 삼각형 위의 최대경로 : https://algospot.com/judge/problem/read/TRIANGLEPATH
<소스코드>
d[r][c] : (r, c) 에서 n-1 번째 줄까지의 최대값.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #include <stdio.h> int n; int g[101][101]; int d[101][101]; int max(int a, int b) { return a > b ? a : b; } int trianglePath(int r, int c) { int ret; if(!g[r][c]) return 0; if(r == n-1) return g[r][c]; if(d[r][c] != -1) return d[r][c]; ret = trianglePath(r+1, c); ret = max(ret, trianglePath(r+1, c+1)); return d[r][c] = g[r][c]+ret; } int main() { int tc; scanf("%d", &tc); while(tc--) { scanf("%d", &n); for(int i=0; i<n; i++) { for(int j=0; j<=i; j++) { scanf("%d", &g[i][j]); d[i][j] = -1; } } printf("%d\n", trianglePath(0, 0)); } return 0; } | cs |
'PS > 종만북' 카테고리의 다른 글
[TILING2] 타일링 (0) | 2018.04.15 |
---|---|
[PI] 원주율 외우기 (0) | 2018.04.15 |
[LIS] 최대 증가 부분 수열 (0) | 2018.04.13 |
[PICNIC] 소풍 (0) | 2018.04.09 |
[JUMPGAME] 외발뛰기 (0) | 2018.04.09 |