반응형
반응형
https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 난이도: solved.ac 실버 3 #define _CRT_SECURE_NO_WARNINGS #include #define max(a,b) ((a)>(b)?(a):(b)) int stairs[301]; int dp[301]; int main() { int n, i; scanf("%d", &N); for (i = 1; i
https://www.acmicpc.net/problem/1149 1149번: RGB거리첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나www.acmicpc.net난이도: solved.ac 실버 1 예제 1을 가지고 설명해보겠다 예제 1의 input을 표로 나타내면 아래와 같다 REDGREENBLUE1번2640832번4960573번138999 일단 dp 문제답게 n 번째까지의 합을 구할 때 n - 1 번째까지의 합을 이용할 건데, 내 풀이에서 핵심은 Red, Green, Blue를 일단 모두 칠해보고 그때의 각 최솟값을 구하는 것이다 여기서..
https://www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 난이도: solved.ac 실버 3 우선 1부터 4까지의 수를 1, 2, 3의 합으로 나타내보자 1을 1, 2, 3의 합으로 나타내면 다음과 같다 1 = 1 (1가지) 2는 아래와 같다 2 = 1 + 1 = 2 (2가지) 3은 아래와 같다 3 = 1 + 1 + 1 = 2 + 1 = 1 + 2 = 3 (4가지) 4는 어떨까? 4 = 1 + 1 + 1 + 1 = 2 + 1 + 1 = 1 + 2 + 1 = 3 + 1 = 1 + 1 + 2 = 2 + 2 = 1 + 3 (7가지) 이미 눈치를 챈 사람도 ..
https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 난이도: solved.ac 실버 2 학교 알고리즘 수업 시간에 배웠던 문제다 우선 내가 짠 코드는 아래와 같다 #define _CRT_SECURE_NO_WARNINGS #include int dp[100000]; int arr[100000]; int main() { int n, i; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &arr[i]); int max..
https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net 난이도: solved.ac 실버 3 이전의 11726번 문제에 하나가 더 추가된 문제다 https://jangkunstory.tistory.com/28 [백준] 11726번: 2 x n 타일링 (C언어) https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사..
https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net 난이도: solved.ac 실버 3 대표적인 다이나믹 프로그래밍 알고리즘 문제다 우선 길이가 1일 때는 아래와 같이 세로로 세우는 방법 딱 한 가지만 존재한다 길이가 2일 때는 아래와 같이 두 가지만 존재한다 그리고 더 나아가 가로의 길이가 N인 상태를 보자 여기서 한 칸을 추가시키려면 아래의 방법 밖에 없다 그리고 두 칸을 추가시키기 위해서는 아래의 방법만 존재한다 아래의 방법은 길이가 N일 때 하나를 더 추가시키고..