본문 바로가기

728x90

전체 글

(51)
[Baekjoon] 1065번 한수 S4 1065번 - 한수 1. 문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. Input 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. Output 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 2. 사용 알고리즘 완전 탐색, 브루트 포스 (Brute Force) 3. 풀이 자연수 N 자연수 $N$은 $1000$ 보다 작거나 같으므로 수열의 항은 최대 4개이다. $N < 100$ $N$은 한 자리 수 혹은 두 자리 수 이므로, 모든 경우에서 등차수열의 특징을 만족..
[Algorithm] 완전 탐색, 브루트 포스 (Brute Force) 1. 개요브루트 포스 (Brute Force) 는 모든 경우에 대해서 탐색하며 조건을 충족하는 경우에 한해 결과를 도출하는 방식으로, 탐색 알고리즘의 한 종류이다. 완전 탐색 알고리즘이라고도 한다.2. 의의브루트 포스는 모든 경우에 대한 탐색으로 결과의 100%의 정확성을 추구한다.3. 조건브루트 포스를 사용하기 위해서는 다음의 조건을 만족하여야 한다.브루트 포스의 적용 조건문제 해결 방법 정의문제 수의 제한3.1. 문제 해결 방법 정의해결할 문제의 정확한 정의를 바탕으로 조건이 충족되는 경우를 찾아나가야 한다.3.2. 문제 수의 제한해결할 문제의 수가 적당해야 한다.너무 많은 양의 문제를 해결해야 할 경우, 많은 시간을 소요하는 등의 성능 저하가 발생한다.4. 종류4.1. 선형 탐색반복문 등을 사용하여..
[Algorithm] 동적 계획법 (Dynamic Programming) 1. 개요 동적 계획법 (Dynamic Programming) (이하 DP) 은 문제를 여러 작은 문제들로 쪼개어 해당 문제를 해결하는 방식을 의미한다. DP를 적용하기 전, 다음의 경우를 만족하는가를 파악할 필요가 있다. 문제를 더 작은 문제로 쪼갤 수 있는가 이전에 구한 해를 재사용 할 수 있는가 2. 의의 DP는 기본적으로 알고리즘을 최적화하기 위해 사용한다. 3. 조건 DP를 사용하기 위해서는 다음의 조건을 만족하여야 한다. DP 의 적용 조건 Overlapping Subproblems (중복 하위 문제) Optimal Substructure (최적 하위 구조) 3.1. Overlapping Subproblems (중복 하위 문제) DP는 하위 문제 (Subproblems) 에서 중복 (Overl..

728x90