Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- 자바 ORM 표준 JPA 프로그래밍 7장
- 코틀린
- Kotlin In Action
- Kotlin in action 10장
- 7장 고급매핑
- 20055 컨베이어 벨트 위의 로봇
- 20055
- Kotlin in action 6장
- Kotlin in action 3장
- 고급매핑
- 백준 13460 Python
- 백준
- Kotlin
- 스프링 핵심 원리 이해
- 백준 20055 컨베이어 벨트 위의 로봇
- 싱글톤 컨테이너
- 객체 지향 설계와 스프링
- 기능개발 python
- Kotlin in action 5장
- 13460 구슬탈출 2
- KotlinInAction
- spring
- 컨베이어 벨트 위의 로봇 Python
- Python
- 스프링 핵심 원리 - 기본편
- 코틸린인액션
- 코틀린인액션
- 스프링 컨테이너와 스프링 빈
- kotlin in action 정리
- 스프링 핵심 원리
Archives
- Today
- Total
기록하는 습관
[백준] DP - 1로 만들기 본문
한동안 코테 스터디 하느라 블로그에 코딩 공부 글을 올리지 못했다.. (?모순)
코테 스터디 내용은 차차 올릴 예정이다.
이제 스터디도 끝나서 다시 혼자 공부해야 하는데 열심히 문제풀이 올리면서 꾸준히 공부해야지. :)
https://www.acmicpc.net/problem/1463
1463번: 1로 만들기
첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.
www.acmicpc.net
점화식 : d[a] = min ( d[a // 3] +1, d[a // 2] + 1 , d[a - 1] + 1 )
시간 복잡도 : O(N)
a = int(input())
d = [0] * (a + 1)
for x in range(2, a + 1):
d[x] = d[x - 1] + 1
if x % 2 == 0:
d[x] = min(d[x], d[x // 2] + 1)
if x % 3 == 0:
d[x] = min(d[x], d[x // 3] + 1)
print(d[a])
'알고리즘 > [문제풀이] 백준' 카테고리의 다른 글
| [백준] DP - RGB 거리 (0) | 2020.10.03 |
|---|---|
| [백준] DP - 계단 오르기 (0) | 2020.10.03 |
| [문제풀이] 경쟁적 전염 (0) | 2020.08.22 |
| [백준] 1697 숨바꼭질(BFS) (0) | 2020.01.21 |
| [백준] 2178 미로탐색 (0) | 2020.01.21 |
Comments