본문 바로가기

짱구 굴리기 (Q) - 52

[백준 2178] 미로탐색 대표적인 BFS 문제입니다. 좌표 저장용 노드 클래스, 미로를 저장할 배열, 방문했는지 여부용 배열을 사용하고 반복문으로 상하좌우 탐색용 배열2개를 사용합니다. 1. 입력받은 미로로 부터 1, 1을 방문체크 하고 큐에 넣어 시작 2. 큐에 원소가 있을동안 큐에서 하나 빼고 poll한 노드의 상하좌우 좌표를 체크하고 이것이 2-1. 미로의 크기를 벗어나지 않음 2-2. 미로의 길임 2-3. 길이 아직 방문이 안되있음 3. 이 세가지 조건을 만족할 경우 다음 좌표를 방문체크 후, 미로의 값을 1 늘려주고 해당 좌표를 가진 노드를 생성해 큐에 넣어줍니다. 2~3을 반복. public class Q2178 { public static int[] nX = {-1, 0, 1, 0}; public static int.. 2019. 4. 8.
[백준 15903] 카드 합체 놀이 우선순위 큐를 사용하여 문제를 풀었습니다. 우선순위큐만 이야기하면 따로 설명은 없어도 될거같습니다. 반복횟수만큼 큐에서 두개를 빼고 더한값을 큐에 두번 넣어주면 되니깐용 아 그리고 int를 하면 범위가 넘어갈거같아 long으로 했습니다 public class Q15903{ public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int cardCnt = Integer.parseInt(st.nextToken()); int loo.. 2019. 4. 7.
[백준 1924] 2007년 단순한 조건, 반복문 문제입니다. 1월 1일 월요일 셋팅을 마친 후 찾는 월과 일이 일치할 경우 요일 출력, 아니면 일과 요일을 1씩 늘리고 조건에 따라 월 증가 및 일, 요일 다시 셋팅. public class Q1924 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int[] arr = new int[3]; String[] day = new String[] {"", "MON","TUE","WED","THU",.. 2019. 4. 7.
[백준 2839] 설탕 배달 현재 수를 체크해 5의 배수라면 5로 나눈 몫과 루프카운트를 더한 값을 출력해주고 값이 0 이하라면 봉지 2개로 N킬로그램을 만들 수 없다고 판단. -1 출력 위의 경우가 아니라면 현재값에서 -3, 루프카운트 +1 public class Q2839 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int num = Integer.parseInt(br.readLine()); int temp = 0; while(true) { if(num%5==0) { System.out.print(num/5 + temp); break;.. 2019. 4. 7.