일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- silver3
- 임시저장하기
- 녹음기
- stack
- Android
- bronze4
- 테마변경
- recyclerView 클릭이벤트
- 다크모드제한
- 백준
- bronze3
- 뷰클래스
- dp
- map
- bottom-up
- naver open api
- Kotlin
- toLong()
- bronze2
- Silver5
- gradle설정
- 프로그래머스
- LV1
- LIS
- RETROFIT
- silver4
- RecyclerView
- Alert Dialog
- fragment에서 context사용
- Top-Down
- Today
- Total
목록bottom-up (5)
유니 코드

백준 11726번 2xn 타일링 문제 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. 입출력 입력 : 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 : 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다. 입력 출력 2 2 9 55 접근방법 우리가 구해야하는 것은 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수이다. 일단 그림을 그려보았다. 그림을 그리다보니 규칙이 조금 보였다 2xn은 N - 1번째보다 한칸 늘어난 것이기 때문에 N - 1번째 경우의 수에 2x1 타일을 붙이는 방법(세로 타일 | 붙이기)과 N - ..
백준 2839번 설탕배달 문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지를 구하는 프로그램을 작성하시오. 입출력 입력 : 첫째 줄에 N이 주어진다 (3 ≤ N ≤ 5000) 출력 : 상근이가 배달하는 봉지의 최..

다이나믹 프로그래밍(DP)에 대해서 정리를 해보려고 한다. DP는 복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 코딩 테스트 빈출 유형 중 하나이다. DP란?! 간단한 여러 개의 문제로 전체 문제를 나누어 푸는 방법을 말한다. (작은 문제의 답을 구한 후 어딘가에 메모해 놓고, 그보다 큰 문제를 풀어나갈 때 똑같은 작은 문제를 구해야한다면 앞서 메모한 결과값을 이용한다.) 대표적인 예로는 피보나치 수 구하기이다. 50번째 피보나치 수를 구해야 한다고 가정하자. P(50) = P(49) + P(48)이기 때문에 50번째 피보나치 수를 구하는 대신에 49번째, 48번째 수를 구하는 것으로 대체할 수 있다. 이런 방식으로 작은 문제에 대한 답을 구하고 이를 통해 더 큰 문제의 답을 구하는..
백준 9095번 1, 2, 3 더하기 문제 정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다. 1+1+1+1 1+1+2 1+2+1 2+1+1 2+2 1+3 3+1 정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오. 입출력 입력 : 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다(0 < n < 11) 출력 : 각 테스트 케이스마다 n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. 3 4 7 10 7 44 274 접근방법 문제를 보고 일단 패드에 0부터 방법의 수를 적어봤다 1 1 2 2, 11 3 3, 21, 1..
백준 2747번 피보나치 수 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입출력 입력 : 첫째 줄에 n이 주어진다. n은 45보다 작거나 같은 자연수이다 출력 : 첫째 줄에 n번째 피보나치 수를 출력한다. 입력 출력 10 55 접근방법 이 문제는 문제에 식이 나와 있..