
브론즈이지만 정답비율이 33%로 낮은 문제이다. DP가 기초단계라면 이 문제 추천한다! Top-down / bottom-up 두 가지 방법으로 접근할 수 있다. 나는 브루트포스 / bottom-up 두 가지 방법으로 풀었고, Top-down 으로 푸는 방법은 런타임 에러가 뜨는 상태이다..! 1. 브루트포스 N = int(input()) five_max = 5000//5 three_max = 5000//3 min_count = three_max for i in range(three_max,-1,-1): total = 3*i if total == N and i < min_count: min_count = i else: for j in range(0,five_max+1): total = 5*j + 3*i i..

기존 피보나치 함수를 DP로 푸는 문제이다. Top-down 방법으로 풀기 위해서 먼저, Zero 개수를 저장하는 배열과 One 개수를 저장하는 배열을 따로 만든 뒤, 기존에 저장되어 있는 값이 없으면 재귀를 실행하고, 있으면 기존 값과 비교해서 더 작은 값으로 초기화하도록 구현하였다. T = int(input()) def fibo(n): if n > 1 and zero[n-1] == 0 and one[n-1] == 0: fibo(n-1) if n == 0: zero[n] = 1 one[n] = 0 elif n == 1: zero[n-1] = 1 one[n-1] =0 zero[n] = 0 one[n] = 1 else: zero[n] = zero[n-2] + zero[n-1] one[n] = one[n-2..
- Total
- Today
- Yesterday
- SQL
- 프로그래머스
- 인텔리제이
- cs
- 알고리즘
- 코딩테스트
- 백준
- allauth
- OS
- SQLD
- 파이썬
- 소셜로그인
- 완전탐색
- cs공부
- 네트워크
- 동적프로그래밍
- 브루트포스
- 4계층
- DP
- Network
- intellij
- C++
- IPv4
- 운영체제
- Python
- BFS
- 코테
- dfs
- 다대다매핑
- 5397
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |