일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- PYTHON
- java #자바 #나동빈
- 다익스트라
- Dijkstra
- BFS
- css #생활코딩 #웹
- 알고리즘
- dp
- 파이썬 #알고리즘 #코딩테스트 #프로그래머스
- 파이썬
- 코딩테스트
- react #리액트 #동빈나
- 프로그래머스 #파이썬 #코딩테스트 #알고리즘
- react #리액트 #동빈나 #나동빈 #유튜브강의
- 백트랙킹
- java #자바
- 백준 #알고리즘 #파이썬 #코딩테스트
- 파이썬 #백준 #알고리즘 #코딩테스트
- 프로그래머스 #파이썬 #알고리즘 #코딩테스트
- 재귀
- 백준 #파이썬 #알고리즘 #코딩테스트
- DFS
- 다이나믹프로그래밍
- 백준
- 자바 #java
- 투포인터
- java #자바 #생활코딩
- css #웹 #생활코딩
- java #자바 #동빈나
- 프로그래머스
Archives
- Today
- Total
커리까지
[프로그래머스] 멀리 뛰기 본문
728x90
SMALL
문제 설명
효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는
(1칸, 1칸, 1칸, 1칸)
(1칸, 2칸, 1칸)
(1칸, 1칸, 2칸)
(2칸, 1칸, 1칸)
(2칸, 2칸)
의 5가지 방법으로 맨 끝 칸에 도달할 수 있습니다. 멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지 알아내, 여기에 1234567를 나눈 나머지를 리턴하는 함수, solution을 완성하세요. 예를 들어 4가 입력된다면, 5를 return하면 됩니다.
제한 사항
- n은 1 이상, 2000 이하인 정수입니다.
입출력 예
n | result |
---|---|
4 | 5 |
3 | 3 |
입출력 예 설명
입출력 예 #1
위에서 설명한 내용과 같습니다.
입출력 예 #2
(2칸, 1칸)
(1칸, 2칸)
(1칸, 1칸, 1칸)
총 3가지 방법으로 멀리 뛸 수 있습니다.
제출 답안
- 처음에는 모든 경우의 수를 구해야 하는 문제인 줄 알았다.
- 하지만 가만히 생각해보니 4가 되려면 3이 되는 경우랑 2가 되는 경우를 더하면 된다는 걸 깨달았다.
- 5가 되려면 4가 되는 경우랑 3이되는 경우를 각각 더해주면 된다.
- 왜냐면 처음에 n이 1인 경우와 2인 경우를 먼저 d에 반영해주었기에 그 다음부터는 앞선 경우를 더해주기만 하면 된다.
- 피보나치 수열과 같다고 보면 된다.
def solution(n):
d = [0] * (n + 1)
d[0] = 1
d[1] = 2
for i in range(2, n + 1):
d[i] = d[i - 1] + d[i - 2]
return d[n - 1] % 1234567
테스트 1 〉 | 통과 (0.00ms, 10.2MB) |
---|---|
테스트 2 〉 | 통과 (0.00ms, 10.2MB) |
테스트 3 〉 | 통과 (0.01ms, 10.3MB) |
테스트 4 〉 | 통과 (0.01ms, 10.3MB) |
테스트 5 〉 | 통과 (0.01ms, 10.2MB) |
테스트 6 〉 | 통과 (0.01ms, 10.2MB) |
테스트 7 〉 | 통과 (0.05ms, 10.4MB) |
테스트 8 〉 | 통과 (0.04ms, 10.2MB) |
테스트 9 〉 | 통과 (0.04ms, 10.2MB) |
테스트 10 〉 | 통과 (0.03ms, 10.3MB) |
테스트 11 〉 | 통과 (0.62ms, 10.2MB) |
테스트 12 〉 | 통과 (0.47ms, 10.2MB) |
테스트 13 〉 | 통과 (0.17ms, 10.4MB) |
테스트 14 〉 | 통과 (0.65ms, 10.4MB) |
테스트 15 〉 | 통과 (0.28ms, 10.2MB) |
테스트 16 〉 | 통과 (0.36ms, 10.2MB) |
728x90
LIST
'알고리즘 > 풀이' 카테고리의 다른 글
[프로그래머스] 피로도 (1) | 2022.10.15 |
---|---|
[프로그래머스] 짝지어 제거하기 (0) | 2022.10.13 |
[프로그래머스] 124 나라의 숫자 (0) | 2022.10.10 |
[프로그래머스] 올바른 괄호 (0) | 2022.10.09 |
[프로그래머스] 다음 큰 숫자 (1) | 2022.10.08 |
Comments