112224   5년 전

알고리즘은 각 (i,j)에 대해서 최대값을 갱신해야 하는 경우는

1) 위에서(dp[i-1][j]+a[i][j])

2)왼쪽에서(dp[i][j-1]+a[i][j])

3)오른쪽에서(dp[i][j+1]+a[i][j])

위 세가지라고 생각하여 풀이를 진행했는데 최대값 비교를 위해 dp 테이블을 갱신하면 값이 이상해져

임시로 tmp에 그 값들을 담아두고 3가지 값중 최대값을 dp[i][j]로 설정하였습니다.(25~35 line)

값을 선택하면 경로를 하나 선택하게 되므로 재방문 하는 경우는 일어나지 않는다고 생각합니다.

게시판에 있는 케이스는 전부 확인해 봤는데 안나와요 ㅠㅠ

n=1000,m=1000 일때 모든 값 100, -100 두가지 경우도 맞게 나오는데...

어디가 틀렸을까요??

112224   5년 전

문제는 22번 라인이었습니다. 지도 사이즈가 정사각 행렬일때는 위 코드도 맞습니다 ㅋㅋㅋㅋ

2일동안 고민했네요.

댓글을 작성하려면 로그인해야 합니다.