🔑 오늘의 학습 키워드 DP
🔗 문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/42898#
def solution(m, n, puddles):
grid = [[0] * (m+1) for _ in range (n+1)]
for x,y in puddles:
grid[y][x] = -1
for i in range (1,n+1):
for j in range (1,m+1):
if i == 1 and j == 1:
grid[1][1] = 1
elif grid[i][j] == -1:
grid[i][j] = 0
else:
grid[i][j] = grid[i-1][j] + grid[i][j-1]
return grid[n][m] % 1000000007
🗒️ 공부한 내용 본인의 언어로 정리하기
🤔 문제를 보고 든 생각
웅덩이라는 제약 조건을 갖고 있는 dp 문제
⏰ 예상 시간 복잡도 O(N * M)
제한사항
격자의 크기 m, n은 1 이상 100 이하인 자연수입니다.
m과 n이 모두 1인 경우는 입력으로 주어지지 않습니다.
물에 잠긴 지역은 0개 이상 10개 이하입니다.
집과 학교가 물에 잠긴 경우는 입력으로 주어지지 않습니다.
😎 알고리즘 개요
해당 지점에 도착하는 것을 생각해봐야 한다.
1,1 에서 출발해서 2, 3에 도착하려면
출발 0 | 1 | 1 |
1 | 2 | 도착 3 |
1,1 -> 1,2 -> 1,3 -> 2,3
1,1 -> 1,2 -> 2,2 -> 2,3
1,1, -> 2,1 -> 2,2 -> 2,3
이렇게 3개가 있는데 각 격자에 도착할 수 있는 경우의 수를 더해나가면 된다.
물웅덩이는 갈 수 없으니 0으로 두면 된다.
✅ 오늘의 회고
- 딥 히 ~ :)
#99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL
'Coding test' 카테고리의 다른 글
99클럽 코테 스터디 42일차 TIL, 프로그래머스 / 코딩테스트공부 (4) | 2024.09.01 |
---|---|
99클럽 코테 스터디 41일차 TIL, 프로그래머스 / 도둑질 (0) | 2024.08.31 |
99클럽 코테 스터디 39일차 TIL, 프로그래머스 / 로또의 최고 순위와 최저 순위 (0) | 2024.08.29 |
99클럽 코테 스터디 38일차 TIL, 프로그래머스 / 혼자 놀기의 달인 (0) | 2024.08.28 |
99클럽 코테 스터디 37일차 TIL, 백준 / 2048 (Easy) / 12100 (1) | 2024.08.27 |