브루트포스 알고리즘

https://www.acmicpc.net/problem/14888 문제를 풀기 위해 Backtracking 알고리즘을 알아야 한다.Backtracking이란 재귀적으로 문제를 하나씩 풀어가면서 현재 재귀를 통해 확인 중인 노드가 조건에 위배되는지 판단하고, 해당 노드가 조건을 위배한다면 그 노드를 제외하고 다음 단계로 나아가는 방식이다.즉, 현재 상태에서 다음 상태로 가는 모든 경우의 수를 찾아서 모든 경우의 수가 더 이상 맞지 않다고 판단되면 이전의 상태로 돌아가는 것이다.따라서 DFS를 통해 모든 경우의 수를 깊이 우선 탐색을 하면서 더 이상 필요 없는 부분을 가지치기하는 행위를 Backtracking이다. 이제 DFS를 알아보자.DFS(깊이 우선 탐색, Depth-First Search)는 하나의..
https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다.www.acmicpc.net  Answer 1import java.io.InputStreamReader;import java.io.BufferedReader;import java.io.IOException;import java.util.Arrays;public class Main { public static void main(String[] args) { final int DWARF_..
https://www.acmicpc.net/problem/2501 2501번: 약수 구하기 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. www.acmicpc.net Answer import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.IOException; import java.util.StringTokenizer; public class Main { public static void main(String[] args) { int N = 0; int K = 0; try (BufferedReader br = new BufferedReader(new ..
Yn3(인삼)
'브루트포스 알고리즘' 태그의 글 목록