백준_1043 거짓말 (유니온파인드)
Algorithm/Algorithm 문제2024. 2. 18. 19:31백준_1043 거짓말 (유니온파인드)

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class BJ_1043_거짓말 { static int[] parent; public static void main(String[] args) throws IOException { int[] truth; ArrayList[] partyArr; StringBuilder sb = new StringBuilder(); BufferedReader br = new BufferedReader(new InputStreamReader..

백준_1976 여행 가자 (유니온파인드)
Algorithm/Algorithm 문제2024. 2. 17. 17:44백준_1976 여행 가자 (유니온파인드)

x가 속한 집합의 대표노드를 찾고자 할 때 parent[x]를 봐서 실수를 했다. find 연산의 경로 압축 때문에 parent 배열의 값이 곧 대표노드일 것이라고 생각해서 그렇다. 하지만 find 연산의 경로 압축은 이후의 find연산을 통해 더 빠르고 효율적으로 대표노드를 찾기 위함이다. x가 속한 집합의 대표노드를 알기 위해서는 parent 배열을 보는 것이 아니라 find연산을 해야함을 주의하자. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class BJ_1976_여행가자 { static int[] pa..

백준_1717 집합의 표현 (유니온파인드)
Algorithm/Algorithm 문제2024. 2. 16. 12:06백준_1717 집합의 표현 (유니온파인드)

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class BJ_1717_집합의표현 { static int[] parent; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine(), " "); int n = Integer.parseInt(..

백준_2251 물통 (BFS)
Algorithm/Algorithm 문제2024. 2. 15. 13:14백준_2251 물통 (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; public class BJ_2251_물통 { static int[] sender = {0, 0, 1, 1, 2, 2}; //물을 옮길 수 있는 6가지 경우의 수 static int[] receiver = {1, 2, 0, 2, 0, 1}; static int[] maxArr = new int[3]; //초기 입력 받은 물통 크기 static int[] nowArr = new int[3]..

백준_1707 이분 그래프 (DFS)
Algorithm/Algorithm 문제2024. 2. 14. 23:45백준_1707 이분 그래프 (DFS)

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class BJ_1707_이분그래프 { static ArrayList[] arr; static boolean[] visited; static int[] check; static boolean dfsResult; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamRead..

백준_1325 효율적인 해킹 (BFS)
Algorithm/Algorithm 문제2024. 2. 13. 11:06백준_1325 효율적인 해킹 (BFS)

문제 자체는 단순해 보였으나 시간복잡도에 매우 민감한 문제였음 교재나 인터넷 상의 다른 코드들과 거의 같은 코드임에도 불구하고 시간초과 발생 사소한 부분이라도 줄이려고 여러번 시도했고 결국엔 통과 해당 코드도 어쩔때는 통과하고 어쩔때는 시간초과에 걸린다..ㅎ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class BJ_1325_효율적인해킹 { static ArrayLis..

백준_18352 특정 거리의 도시 찾기 (BFS)
Algorithm/Algorithm 문제2024. 2. 11. 22:54백준_18352 특정 거리의 도시 찾기 (BFS)

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class BJ_18352_특정거리의도시찾기 { static ArrayList[] arr; static Integer[] visited; static int cnt; static Queue result; public static void main(String[] args) throws IOException { BufferedR..

백준_21568 Ax+By=C (확장 유클리드 호제법)
Algorithm/Algorithm 문제2024. 2. 10. 23:30백준_21568 Ax+By=C (확장 유클리드 호제법)

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class BJ_21568_AxByC { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine(), " "); StringBuilder sb = new StringBuilder(); int a..

image