//알고리즘 1. DP 2. 규칙을 찾아내고 DP 테이블을 만들어 계산 풀이 1. 더보기 import java.util.Scanner; public class GCD2 { static int T, K, cnt, A, B; static long[] v; public static void main(String[] args) { Scanner sc = new Scanner(System.in); T = sc.nextInt(); v = new long[93]; for (int tc = 1; tc
//알고리즘 1. 부분집합 - 부분집합(사람)을 이용하여 계단을(A,B)를 선택 2. 계단은 3명씩 이용가능하기 때문에 Queue를 사용 - 큐의 크기(3 : 3명씩 가능하기 때문)와 시간을 이용하여 offer 와 poll 3. A계단과 B계단을 각각 계산하여 모든 부분집합에 대한 최소값을 구함. 더보기 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedList; import java.util.List; import java.util.Queue; impor..
//알고리즘 1. bfs탐색 2. 매 초마다 번호가 낮은 종류의 바이러스부터 먼저 증식한다는 조건이 있기 때문에 우선순위 큐 사용. 더보기 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.PriorityQueue; import java.util.StringTokenizer; public class 경쟁적전염_18405 { static int n, k, map[][]; static int[] dr = { -1, 1, 0, 0 }; static int[] dc = { 0, 0, -1, 1, }; static L..