본문 바로가기

분류 전체보기58

[java] 문제 036 (백준 1541) 문제잃어버린 괄호 교재 풀이import java.util.Scanner;public class P1541_잃어버린괄호 { static int answer = 0; public static void main(String[] args) { Scanner sc = new Scanner(System.in); String example = sc.nextLine(); String[] str = example.split("-"); for (int i = 0; i  내 풀이) 24.6.19에 풀고 맞았음import java.util.*;import java.io.*;public class Main{ public static void main(String[] args) throws IOExcep.. 2024. 6. 19.
[java] 문제 035 (백준 1931) 문제회의실 배정 교재 풀이import java.util.Arrays;import java.util.Comparator;import java.util.Scanner;public class P1931_회의실배정 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[][] A = new int[N][2]; for (int i = 0; i () { @Override public int compare(int[] S, int[] E) { if (S[1] == E[1]) { // 종료 시간이 같을 경우 return.. 2024. 6. 19.
[java] 문제 034 (백준 1744) 문제수 묶어서 최댓값 만들기 교재 풀이import java.util.Collections;import java.util.PriorityQueue;import java.util.Scanner;public class P1744_수묶기 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); // 카드 묶음의 수 저장 // 양수는 내림차순 정렬 PriorityQueue plusPq = new PriorityQueue(Collections.reverseOrder()); PriorityQueue minusPq = new PriorityQueue(); int.. 2024. 6. 18.
[java] 문제 033 (백준 1715) 문제카드 정렬하기 교재 풀이import java.util.PriorityQueue;import java.util.Scanner;public class P1715_카드정렬하기 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); // 카드 묶음의 수 저장 PriorityQueue pq = new PriorityQueue(); for (int i = 0; i  내 풀이) 24.6.18에 풀고 틀림import java.util.*;import java.io.*;public class Main{ public static void main(String[] args.. 2024. 6. 18.
[java] 문제 032 (백준 11047) 문제 동전 개수의 최솟값 구하기  교재 풀이import java.util.Scanner;public class P11047_동전개수최솟값 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int K = sc.nextInt(); int[] A = new int[N]; for (int i = 0; i = 0; i--) { if (A[i]  내 풀이) 24.6.18에 풀고 맞음import java.util.*;import java.io.*;public class Main{ public static void main(String[] args) .. 2024. 6. 18.
임시) 정수론 소수 구하기 개념은 쉽게 이해되고, 시간 복잡도가 nlog(logn)이라는 게 신기하네 정도. 37번, 소수 구하기에라토스테네스를 이해해가지고 코딩으로 구현하는 코테 문제가 많이 나와요.  n의 제곱근까지만 탐색하는 이유즉 예로 16은 (1,16), (2,8), (4,4) 이렇게 약수가 있지. 이 때 우린 1, 2, 4 즉 괄호의 왼쪽 부분만 탐색하고 싶은 거야왜 굳이 오른쪽 부분, 즉 16, 8, 4 이런 부분까지 일일이 루프 돌면서 해당 수와 짝지어 지는 약수 있는지 탐색해야 함?이미 n의 제곱근 이하인 수로만 탐색해서 소수 아닌 거 다 판별하면, 그럼 n의 제곱근 이상의 수들을 가지고 다시 할 필요 없지. 이미 다 했는데. 이미 n 제곱근 이상의 수들을 가지고 해당 수로 나눠지는 걸 판별하는 짓을 .. 2024. 6. 18.
[java] 문제 029 (백준 1920) 문제수 찾기 교재 풀이import java.util.Arrays;import java.util.Scanner;public class P1920_원하는정수찾기 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[] A = new int[N]; for (int i = 0; i target) { end = midi - 1; } else if (midV  내 풀이) 24.6.14에 풀고 맞음import java.util.*;import java.io.*;public class Main{ static int[] ns; .. 2024. 6. 14.
[java] 문제 028 (백준 1167) 문제트리의 지름 교재 풀이import java.util.*;public class P1167_트리의지름 { static boolean visited[]; static int [] distance; static ArrayList[] A; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); // 정점의 수 A = new ArrayList[N + 1]; for (int i = 1; i (); } for (int i = 0; i queue = new LinkedList(); queue.add(index); visited[index] =.. 2024. 6. 14.