- 알고리즘 분류 : 문자열 - 사용 언어 : 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; ..
- 알고리즘 분류 : 구현, 이분탐색 - 사용 언어 : 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);..
- 알고리즘 분류 : 정렬, 이분 탐색(?) - 사용 언어 : JAVA - 문제 요점 - 0에 가깝다라는 뜻은 절댓값이 0에 가까우면 된다는 뜻. - 절댓값으로 비교하면 문제 풀이가 쉬움 - 이분 탐색과 비슷한 것을 하는 이유는 시간 제한때문. 소스 설명은 주석을 참고해주세요. package baekjoon_study; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; // Link: https://www.acmicpc.net/problem/2470 public class Baekjoo..
- 알고리즘 분류 : 구현, DFS - 사용 언어 : JAVA - 문제 요점 - 문제 안에 있는 게임사이트 링크를 통해 직접 플레이해보면 더욱 이해하기 편하다. - 한 번의 이동에서 한 번 합쳐진 블록은 다시 합쳐질 수 없다는 것에 유의한다. 필자는 상하좌우 이동 로직을 구현하다 아래 방향의 로직에서 사소한 실수로 인해 몇 시간을 날려먹었다... 코딩은 한 번에 깔끔하게 짜도록 해야겠다. 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; // Link : https://www.acmicpc.net..
- 알고리즘 분류 : 구현 - 사용 언어 : JAVA - 문제 요점 ?가 주어지는 줄의 인덱스를 구해서 사다리 타기 상단 ~ ? 줄 전까지의 결과를 구하고 사다리 타기 마지막(문제에서 원하는 마지막 줄 알파벳) 부터 ? 줄 앞까지의 결과를 구해서 이 둘의 결과를 비교 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** - Link: https://www.acmicpc.net/problem/2469 - 문제 설명 시작지점: A B ... (알파벳 순서) *: 잇는 줄 X, -: 잇는 줄 O, ?: 주어지지 않음 3번 째로 입력받은 문자열이 사다리 결과가..