삼각형 위의 최대 경로 개수 세기 (난이도: 중)
·
알고리즘 (with JAVA)/동적 계획법
( 여기서 먼저 이 알고리즘을 보기전에 아래의 사이트를 먼저 학습하고 보는 것을 추천합니다. ) 삼각형 위의 최대 경로 (난이도: 하) (tistory.com) 삼각형 위의 최대 경로 (난이도: 하) 1. 문제 설명 (1) 아래의 그림과 같이 삼각형으로 배치된 자연수들이 있다고 가정한다. (2) 맨 위의 숫자에서 시작해서, 한 번에 한 칸씩 아래로 내려가 맨 아래 줄까지 닿는 경로를 만들려고 한다. kind-coding.tistory.com 1. 문제 설명 (1) "삼각형 위의 최대 경로"에서는 최대 경로의 합을 구했지 경로 자체는 구하지 않았다. (2) 예를 들어, 아래의 그림 삼각형에는 세 개의 최대 경로 {9, 7, 2, 6}, {9, 7, 3, 5}, {9, 7, 3, 5}가 존재하며 합은 모두 ..
타일링 방법의 수 세기 (난이도: 하)
·
알고리즘 (with JAVA)/동적 계획법
1. 문제 설명 (1) 2xN 크기의 사각형을 2x1 크기의 타일로 채우는 방법의 수를 계산하는 문제가 있다고 하자. (2) 타일들은 서로 겹쳐서는 안 되고 90도로 회전해서 쓸 수 있다. (3) 예를 들어, N=5라고 하면, 아래의 그림과 같이 여덟 가지의 방법이 있다. (4) 이때 N의 최댓 값이 100이라고 할 때 타일을 채우는 방법의 수를 찾는 프로그램을 작성하시오. 2. 입출력 조건 및 예제 입력 조건 (1) 입력의 첫 줄에는 테스트 케이스의 수 C가 주어진다. (2) 그 후 각 줄에 사각형의 너비(1
양자화 (난이도: 중)
·
알고리즘 (with JAVA)/동적 계획법
1. 문제 설명 (1) 양자화(Quantization) 과정은 더 넓은 범위를 갖는 값들을 작은 범위를 갖는 값들로 근사해 표현함으로써 자료를 손실 압축하는 과정을 말한다. (2) 예를 들면, 16비트 JPG 파일을 4컬러 GIF 파일로 변환하는 것은 RGB 색 공간의 색들을 4컬러 중의 하나로 양자화하는 것이며, 키가 161, 164, 178, 184인 학생 넷을 (160대 두명, 170대 하나, 180대 하나) 라고 축약해 표현하는 것 또한 양자화라고 할 수 있다. (3) 여기서는 1,000 이하의 자연수들로 구성된 수열을 S가지의 자연수만을 사용하도록 양자화하려고 한다. (4) 예를 들어, 수열 1 2 3 4 5 6 7 8 9 10을 두 가지의 숫자만을 써서 표현하려면, 3 3 3 3 3 7 7 7..
원주율 외우기 (난이도: 하)
·
알고리즘 (with JAVA)/동적 계획법
1. 문제 설명 (1) 원주율을 몇만 자리까지 외우는 사람들이 존재합니다. (2) 이들은 이 수를 외우기 위해 사용하는 방법 중 하나는 숫자를 몇 자리씩 끊어서 외우는 것입니다. (3) 이때 세 자리에서 다섯자리까지 끊어서 외운다고 하였을 때, 다음과 같은 난이도가 존재합니다. ( ex) 12341234 -> {123}, {41234} 또는 {1234}, {1234} 또는 {12341}, {234} ) 경우 예 난이도 모든 숫자가 같을때 333, 5555 1 숫자가 1씩 단조 증가하거나 단조 감소할 때 23456, 3210 2 두 개의 숫자가 번갈아가며 나타날 때 323, 54545 4 숫자가 등차 수열을 이룰 때 147, 8642 5 이 외의 모든 경우 17912, 331 10 (4) 원주율의 일부가 ..