본문 바로가기

CODING TEST55

[java] 문제 027 (백준 2178) 문제미로 탐색 교재 풀이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 P2178_미로탐색 { // 상 우 하 좌 탐색을 위한 배열 선언 static int[] dx = { 0, 1, 0, -1 }; static int[] dy = { 1, 0, -1, 0 }; static boolean[][] visited; static int[][] A; static int N, M; public static void ma.. 2024. 6. 14.
임시) 그리디 그리디 알고리즘 그리디를 썼을 때 최적의 해를 도출해 낼 수 있는 문제가 있고 아닌 게 있음⇒ 이 문제에 그리디 쓸 수 있는지 판단해야 함뭔가 문제 보니까 최소, 최대를 구하는 문제가 많네그리디 알고리즘은 또 우선순위 큐와 자주 쓰이네또는 정렬하는 로직이 자주 쓰이네 문제 32, 동전 개수의 최솟값 구하기 그리디 썼을 때 반례 안 생기는 지 한번 따져봐야 함(1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수)즉 2 4 8처럼 배수 관계란 소리 → 그냥 현재 상태에서 가장 큰 동전부터 차례대로 나눠주면 되는 게 성립이 되는 것임반례) 동전 1 6 7 있고, 금액 12를 맞춘다면그리디 알고리즘 → 7이 1개, 1이 5개그러나 동전 최소값은 → 6이 2개배수 형태가 .. 2024. 6. 13.
[java] 문제 026 (백준1260) 문제DFS와 BFS 교재 풀이import java.util.*;public class P1206_DFS와BFS { static boolean visited[]; static ArrayList[] A; public static void main(String[] args) { Scanner scan = new Scanner(System.in); int N = scan.nextInt(); // 정점의 수 int M = scan.nextInt(); // 간선의 수 int Start = scan.nextInt(); // 시작점 A = new ArrayList[N + 1]; for (int i = 1; i (); } for (int i = 0; i queue = n.. 2024. 6. 13.
[java] 문제 025 (백준 13023) 문제ABCDE 교재 풀이import java.util.*;public class P13023_친구관계파악하기 { static boolean visited[]; static ArrayList[] A; static boolean arrive; public static void main(String[] args) { int N; // 정점의 수 int M; // 간선의 수 arrive = false; Scanner scan = new Scanner(System.in); N = scan.nextInt(); M = scan.nextInt(); A = new ArrayList[N]; visited = new boolean[N]; for (int i = 0; i.. 2024. 6. 12.
[java] 문제 024 (백준 2023) 문제신기한 소수 교재 풀이import java.util.*;public class P2023_신기한소수 { static int N; public static void main(String[] args) { Scanner in = new Scanner(System.in); N = in.nextInt();// 일의 자리 소수는 2 3 5 7 이므로 4개 수에서만 시작 DFS(2, 1); DFS(3, 1); DFS(5, 1); DFS(7, 1); } static void DFS(int number, int jarisu) { if (jarisu == N) { if (isPrime(number)) { System.out.println(number).. 2024. 6. 12.
[java] 문제 023 (백준 11724) 문제연결 요소 개수 교재 풀이import java.io.*;import java.util.*;public class P11724_연결요소의개수 { static ArrayList[] A; static boolean visited[]; 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(st.nextToken()); int m = Integer.pars.. 2024. 6. 12.
[java] 문제 022 (백준 10989) 문제수 정렬하기 3 교재 풀이import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;public class P10989_수정렬하기3 { public static int[] A; public static long result; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Buffer.. 2024. 6. 11.
[java] 문제 021 (백준 1517) 문제버블 소트 교재 풀이import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;public class P1517_버블소트2 { public static int[] A, tmp; public static long result; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integ.. 2024. 6. 11.