// 알고리즘 1. 시뮬레이션 2. 컨베이어 벨트 위 / 아래 각각 한개씩 배열을 생성 3. 컨베이어벨트 이동함수 ( moveC ) 작성 4. 로봇 이동함수 (moveR) 작성 -> 로봇은 방문배열v 하나만 구현하면 됨. (위 배열만 필요 함.) 5. 계산 -> 횟수 1 증가 -> moveC -> moveR -> 올라가는 곳 (uArr[0] ) 확인 해서 로봇올리기 -> 위 / 아래 배열에서 내구도가 0인 개수 확인 더보기 import java.util.*; import java.io.*; public class 컨베이어벨트_20055 { static int N, K, uArr[], dArr[], ans; static boolean[] v; public static void main(String[] ar..
// 알고리즘 1. 위상정렬 2. 진입차수를 저장하는 배열 v에 진입차수를 담음. 3. 진입차수가 0인 노드먼저 큐에 넣음. 4. 큐를 하나씩 poll하고 해당 노드와 연결되어있는 노드의 진입차수를 1씩 감소함 -> 만약 1감소한 노드의 진입차수가 0이 되었을 경우 큐에 집어넣음. 더보기 import java.util.*; import java.io.*; public class 줄세우기_2252 { static int N, M, v[]; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st ..
// 알고리즘 1. 자료구조활용 문제 2. 우선순위큐 사용 - 중간값을 구하기 위해 min우선순위큐와 max우선순위큐 2개 사용 - 우선순위큐의 크기가 같으면 두개의 peek값을 비교하여 값 선정 - min의 peek 값과 max의 peek값을 비교하여 min 값이 더 작으면 자리교체 3. StringBuilder에 max.peek 값 저장 더보기 import java.util.*; import java.io.*; public class 가운데를말해요_1655 { static int N; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(Sys..