- 알고리즘 분류 : 정렬, 우선순위 큐 - 사용 언어 : JAVA - 문제 요점 - 음수가 2개 이상인 경우, 음수끼리 곱해서 양수로 만들 수 있다. - 음수가 하나이고, 0이 있는 경우, 음수와 0을 곱해서 0으로 만들 수 있다. - 양수가 2개 이상인 경우, 양수끼리 곱해서 더 큰 양수로 만들 수 있다. (단, 1이 2개 인 경우 곱셈보단 더하기가 더 크다.) 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.PriorityQueue; import java.util.Qu..
Algorithm
- 알고리즘 분류 : 정렬, 우선순위 큐 - 사용 언어 : JAVA - 문제 요점 - 가방의 무게를 기준으로 넣을 수 있는 보석들을 우선순위 큐에 넣는 방식으로 풀이 - 참고한 블로그 : https://devowen.com/300 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.PriorityQueue; import java.util.Queue; import java.util.StringTokenizer; /* 첫 번째 방법 : 보석의 정렬 방법 : 가치 내림차순 가방의 정렬 방법..
- 알고리즘 분류 : 구현 - 사용 언어 : JAVA 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int N, M, B; public static int[][] map; public static int RESULT_TIME = Integer.MAX_VALUE; public static int RESULT_HEIGHT = 0; public static int MIN = Integer.MAX_VALUE; public static int..
- 알고리즘 분류 : DFS - 사용 언어 : JAVA - 문제 요점 - 0일 때, 1개를 빼줘야 한다. 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int N, S; public static int[] arr; public static int cnt = 0; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader..
- 알고리즘 분류 : DFS, DP, 백트래킹 - 사용 언어 : JAVA - 문제 요점 - 시작지점부터 1로 카운트시작 - 백트래킹 사용 필수 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/1103 public class Main { public static int N, M; public static char[][] map; public static int[][] dp; public static boolean[][] v..
- 알고리즘 분류 : DFS, DP - 사용 언어 : JAVA 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; // Link : https://www.acmicpc.net/problem/1937 // 참고한 블로그 : https://steady-coding.tistory.com/39 public class Main { public static int N; public static int[][] map; public static int[][] dp; public static int[] xmove ..
- 알고리즘 분류 : 문자열, 스택 - 사용 언어 : JAVA - 문제 요점 - 괄호의 특성과 같은 스택 사용(FILO) 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); /..
- 알고리즘 분류 : BFS - 사용 언어 : JAVA - 문제 요점 - BFS와 PriorityQueue를 사용 - 물을 먼저 퍼트리고, 갈 곳을 탐색 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.PriorityQueue; import java.util.StringTokenizer; public class Main { public static int R, C; public static char[][] map; public static boolean[][] visited; // 상하좌우에 사용됨 public static ..