# dynamic programming

29개의 포스트
post-thumbnail

BOJ : 1003 피보나치 함수

N 번째 피보나치 수에서 0과 1을 호출하는 횟수를 각각 출력한다. 새로운 수를 입력받을 때마다 그 때 그 때 계산해주면 시간 초과가 걸린다.fibbo_nums 에 계산이 완료된 값을 넣어주어 재사용이 가능하도록 했다.

2020년 10월 8일
·
0개의 댓글

200925 금 [BOJ] 1699

BOJ 1699

2020년 9월 25일
·
0개의 댓글

200924 목 [BOJ] 11054, 1912, 2579

난 처음에 가장 큰 숫자highestNum을 기점으로해서 어떻게 양쪽으로 구분할 수 있지 않을까 했는데.. 결국 실패했다. 30분정도 고민했다.구글링을 해보니 가장 일반적인 풀이법은 LIS 풀이법을 앞뒤로 계산해서 값을 구하는 방식이어서 참고해봤다.

2020년 9월 24일
·
0개의 댓글

200923 수 [BOJ] 2156, 11053, 11055, 11722

(출처 : https://hees-dev.tistory.com/30 )규칙을 찾아서 일반화시키는 과정에서 길을 잃었다.. 나름 2중배열까지 사용해가며 코딩해봤으나 결국 답을 못찾고 실패. 다른 사람 코드 참고함.LIS(Longest Increasing Subs

2020년 9월 23일
·
0개의 댓글

200922 화 [BOJ] 9465

(참고 : https://fbtmdwhd33.tistory.com/76 )결국 다른 사람 풀이를 보고 이해했다. 아니, 사실 아직도 잘 이해가 안된다.소스는 이해를 했는데, 어떻게 저 원리가 성립되는지 잘 모르겠다.DP 진짜 알듯말듯 어렵네..BufferedR

2020년 9월 22일
·
0개의 댓글

200921 월 [BOJ] 2193

Dynamic Programming 이란 이전에 계산된 값들을 통해 구하고자 하는 값을 얻는 풀이방법.Bottom-up 방식.자료형을 int로 했을 땐 값 범위가 벗어나 버림. long으로 바꾸자 정답~int의 범위 : -2,147,483,648~2,147,483,6

2020년 9월 21일
·
0개의 댓글

200920 일 [BOJ] 11057

Top-down으로 풀려다가 그냥 Bottom-up으로 풀었다. 내일은 Top-down으로 꼭 풀어봐야지.을 10,007로 나누지 않고 값을 출력하려고 해서 자꾸 틀렸습니다 를 맞았다..ㅂㄷㅂㄷ

2020년 9월 20일
·
0개의 댓글

200919 토 [BOJ] 10844

단순히 배열의 인덱스 순서로만 문제를 해결하려 들어서는 안되고, 문제 해결을 위해 조건을 세우고 쪼개봐야 하는구나!

2020년 9월 19일
·
0개의 댓글

200918 금 [BOJ] 11726, 11727, 9095

문제에서 구하려고 하는 답을 문장으로 나타낸다.그 문장에 나와있는 변수의 갯수만큼 메모하는 캐시 배열을 만든다.Top-down 인 경우에는 재귀호출의 인자의 갯수가 된다.(?)마지막으로, 문제를 작은 문제로 나누고 수식(점화식)을 이용하여 문제를 표현한다.(출처 : h

2020년 9월 18일
·
0개의 댓글

200917 목 [BOJ] 1463

❗ 단순 반복문, 조건문으로는 최소 횟수 를 산출할 수 없음!❗ 무조건 큰 수로 나눠버리는게 최선이 아님!!!🔑 인덱스가 0부터 입력된 수까지 모든 수를 나타내는 배열을 생성하고, 각각 1이 되는 최소횟수를 값으로 가진다.💡 Top-Down은 재귀함수(출처 : ht

2020년 9월 17일
·
0개의 댓글

Baekjoon - Seats in Theater

Baekjoon : Seats in TheaterThere is theater with seats in one line ranging from 1 to N. Audience must take a seat according the number on the ticket.

2020년 9월 5일
·
0개의 댓글
post-thumbnail

[2020/9/4] 순차/이진 탐색 알고리즘, 재귀 알고리즘, 동적 계획법, 피보나치 수열, 하노이 탑

순차/이진 탐색 알고리즘, 재귀 알고리즘, 동적 계획법, 피보나치 수열, 하노이 탑

2020년 9월 4일
·
0개의 댓글

Baekjoon - Integer Triangle

Baekjoon : Integer TriangleFigure 1 shows a number triangle. Write a program that calculates the highest sum of numbers passed on a route that starts

2020년 9월 4일
·
0개의 댓글

[ 백준 2248 ] 이진수 찾기

I번째로 오는 이진수를 찾기 위해서, N개의 각 자리에서 1, 0인지를 알아내야 한다.

2020년 8월 25일
·
0개의 댓글

[백준] 2193번 : 이친수 (Java)

0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수

2020년 8월 6일
·
0개의 댓글

LeetCode: Climbing Stairs

This is a simple recursion problem where the function is called inside a function.if and elif statements are 'base cases', and its purpose is to memoi

2020년 7월 28일
·
0개의 댓글

Dynamic Programming

Dynamic Programming 큰 문제를 한번에 해결하기 힘들 때 작은 여러 개의 문제로 나누어서 푸는 것을 분할정복 기법이라고 합니다. 작은 문제들을 풀다보면 반복해서 푸는 경우가 생기는데 매번 재계산을 대신 값을 저장했다가 사용하는 것을 Dynamic Prog

2020년 5월 3일
·
2개의 댓글