- 알고리즘 분류 : 트리 - 사용 언어 : JAVA - 문제 요점 - 트리 이용 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.HashMap; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/14725 public class Main { public static StringBuilder sb = new StringBuilder(); public static void main(String[] ..
Algorithm
- 알고리즘 분류 : 문자열 - 사용 언어 : JAVA - 문제 요점 - 정렬을 이용 - 정렬 후 접두어 비교하면 간단하게 풀이 가능 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; // Link : https://www.acmicpc.net/problem/5052 public class Main { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub int caseCount; BufferedR..
- 알고리즘 분류 : BFS - 사용 언어 : JAVA - 문제 요점 - 최소 거리를 구해야 하므로 BFS 이용 - 벽을 부쉈을 때의 방문체크 변수와 벽을 부수지 않았을 때의 방문체크 변수 두 개를 이용해야 함. 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/2206 public class Main { public static..
- 알고리즘 분류 : DFS, BFS - 사용 언어 : JAVA - 문제 요점 - DFS를 이용해서 구역을 구함. 구한 구역은 숫자로 저장 - 구역 사이의 최소 거리를 구함. BFS와 전체탐색 이용 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/2146 public class Main { public static int N; ..
- 알고리즘 분류 : BFS - 사용 언어 : JAVA - 문제 요점 - 전체 탐색을 진행하면서 BFS 이용 - 육지 간의 최대 거리를 구하면 됨. 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/2589 public class Main { // H: 높이, W: 넓이, MAX_LENGTH: 육지간 최대 거리 public sta..
- 알고리즘 분류 : BFS - 사용 언어 : JAVA - 문제 요점 - 처음 치즈판을 받을 때 치즈의 갯수를 기록해두고 - 치즈를 제거하면서 제거된 치즈의 갯수를 확인 - 치즈 내부에 있는 공간은 공기가 없다고 가정. - 0,0은 무조건 공기가 있기 때문에 0,0 지점에서 공기를 확인하면 됨. 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; // Link : https://www.acmicpc.net..
- 알고리즘 분류 : 구현, 이분탐색 - 사용 언어 : JAVA - 문제 요점 - 필자는 이분 탐색이 아닌, HashMap으로 구현함 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/10816 public class Main { // N: 가지고 있는 카드의 수, M: 찾을 카드의 수 public static int N, M; // HashMap을 이용해서 풀이예정 publi..
- 알고리즘 분류 : 문자열, DFS - 사용 언어 : JAVA - 문제 요점 - 암호 규칙에 맞게 모음 1개 이상, 자음 2개 이상으로 구성 - DFS를 이용해서 문자열을 구함 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/1759 public class Main { // 3 = 2) { resultList.add(str);..