일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- nlp
- kick start
- linux
- 운영체제
- CSS
- 딥러닝
- 구글 킥스타트
- dp
- 프로그래밍
- OS
- 파이썬
- google coding competition
- 네트워크
- 코딩 테스트
- 리눅스
- 동적 프로그래밍
- 브루트포스
- PYTHON
- 백준
- 순열
- AI
- 코딩
- BFS
- 알고리즘
- 프로그래머스
- 킥스타트
- DFS
- 그래프
- 코딩테스트
- 동적프로그래밍
- Today
- Total
목록동적계획법 (3)
오뚝이개발자
문제 programmers.co.kr/learn/courses/30/lessons/42898 코딩테스트 연습 - 등굣길 계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = programmers.co.kr 풀이 DP를 사용해 푸는 문제이다. 문제에서 이동은 오른쪽과 아래쪽으로만 가능하다고 했으니, 한 지점까지 올 수 있는 가능한 경로는 그 지점의 위와 왼쪽칸으로부터이다. 따라서 각 칸마다 그 칸까지 도달가능한 경로의 수를 저장하면 된다. grid라는 n x m 2차원 리스트를 만들어 (0,0)에 1을 넣고, puddle에는 -1을 넣는다. 그 후, 이중for문으..
문제설명 위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다. 삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성하세요. 제한사항 삼각형의 높이는 1 이상 500 이하입니다. 삼각형을 이루고 있는 숫자는 0 이상 9,999 이하의 정수입니다. 입출력 예 풀이 가장 좌측과 우측의 경우 가능한 경로가 1개씩 밖에 없다. 가운데 숫자들의 경우 윗층의 2곳(왼쪽대각선위, 오른쪽대각선위)에서 올 수 있는데 이 중..
문제설명 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈트는 건전지로 작동되는데, 순간이동을 하면 건전지 사용량이 줄지 않지만, 앞으로 K 칸을 점프하면 K 만큼의 건전지 사용량이 듭니다. 그러므로 아이언 슈트를 착용하고 이동할 때는 순간 이동을 하는 것이 더 효율적입니다. 아이언 슈트 구매자는 아이언 슈트를 착용하고 거리가 N 만큼 떨어져 있는 장소로 가려고 합니다. 단, 건전지 사용량을 줄이기 위해 점프로 이동하는 것은 최소로 하려고 합니다. 아이언 슈트 구매자가 이동하려는 거리 N이 주어졌을 때, 사용해야 하는 건전지 사용량의 최솟값을 return하..