티스토리 뷰

연습

프로그래머스 등굣길

onaeonae1 2024. 4. 17. 20:05

문제 설명 및 접근법

  • 약간 확통 문제 느낌이다
  • x,y 기준으로 표기했을 때, (1,1) 에서 시작해서 (m, n) 까지 가능한 경우의 수 찾는 것
  • 중간에 폭우로 길이 막힌 구간이 있는 것을 감안해서 다음과 같이 DP 적으로 접근하면 된다
    • DP 2차원 배열을 만들고 모두 1로 초기화, 우물 관련 처리되는 부분들은 0으로
    • DP[x][y] = DP[x-1][y] + DP[x][y-1]

점화식에서 어려울 것은 없고 길이 막힌 경우들을 처리해주면 된다

 

 

엣지 케이스

크게 어려움이 되는 케이스들은 다음과 같았다

  • 왼쪽끝 (x==1) 혹은 위쪽끝(y==1) 에 물로 막힌 경우
    • 해당 줄의 DP를 모두 0 으로 처리

 

코드

 

 

DP연습을 자주 합시다

 

눈에 딱 DP로 보여서 재귀로 접근하는 사람들은 많지 않을 텐데, 굳이 재귀로 접근한다면 효율성에서 터짐

 

'연습' 카테고리의 다른 글

WebGoat: Broken Authentication JWT Tokens  (0) 2024.04.20
토익스피킹 빠르게 고득점 하는 방법  (0) 2024.03.29
docker-compsoe 업그레이드하기  (1) 2022.09.16
[Django] testcase 사용하기  (0) 2022.08.16
vscode remote ssh 막힐때  (0) 2022.08.08
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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
글 보관함