JAVA 130

[JAVA] 백준 3190 뱀_구현

문제:https://www.acmicpc.net/problem/3190  접근 :   - 1,1 에서 오른쪽으로 진행한다.  - 만약 사과가 있다면 몸의 길이(queue)를 늘린다.  - n초 뒤에 command(회전)이 있다면 command대로 머리를 돌린다.  - 만약 진행 중 벽을 만나거나, 자신의 몸에 부딛히면 종료하고 시간을 출력한다.    코드구현 :import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Objects;import java.util.Queue;public class Main { public..

JAVA/Coding Test 2024.06.17

[JAVA] 백준 2178 미로탐색_BFS

문제 : https://www.acmicpc.net/problem/2178  접근 :   - 시작 위치부터 종료위치에 도달 할 때까지 BFS 를 사용하여 탐색한다.  - 종료위치에 도달하면 타일의 갯수를 정답으로 반환한다.  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { public static class Position{ private int x; private int y; private int length; public Position(int x, int y, in..

JAVA/Coding Test 2024.06.12

[JAVA] 백준 14502 연구소_부르트포스

문제 : https://www.acmicpc.net/problem/14502 접근 :   - 벽을 3개 만들 수 있는 모든 경우의 수를 만든다.  - 벽을 3개 다 만들면 bfs 를 진행하여 바이러스를 끝까지 퍼뜨린다.  - 바이러스를 모두 퍼뜨리면 빈공간의 갯수를 확인하여 정답을 갱신 후 출력한다.   코드구현 :import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { private static Position[] direction = new Position[]{ new Position(0,1), new P..

JAVA/Coding Test 2024.06.11

[JAVA] 백준 2251 물통_DFS

문제 : https://www.acmicpc.net/problem/2251  접근 :   - 물통 상태를 저장하는 클래스를 생성한다.  - 물통  a 부터 남은 물의 양이 있으면 b 또는 c 로 옮긴다. 만약 옮긴 후의 상태가 한번이라도 같은 적이 있는 경우에는 물을 붓지 않는다.  - a가 비어 있을때, c 의 물의 상태를 TreeSet 으로 저장하여 모든 수를 출력한다.  코드구현 1 (물통Set 전체를 클래스로 구현) : import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { private static Set visite..

JAVA/Coding Test 2024.06.11

[JAVA] 백준 16472 고냥이_큐

문제 : https://www.acmicpc.net/problem/1253  접근 :   - 들어온 수를 큐와 set, count 배열에 넣는다.  - 만약 set 이 n 보다 클 경우 큐에서 1개씩 제거하면서 count의 수를 줄이고 count 수가 0 이되면 set에서 제거한다.  - 제거 후 큐의 길이를 기존 값과 비교하면서 더 큰 값으로 갱신 후 출력한다.  코드구현 :  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { public static void main(String[] args) throws IOExce..

JAVA/Coding Test 2024.06.10

[JAVA] 백준 1253 좋다_투포인터

https://www.acmicpc.net/problem/1253 접근 :   - 입력된 수를 오름차순으로 정렬한다.  - 왼쪽끝, 오른쪽 끝에 포인터를 두고 이동시키면서  target 인 수가 되는지 확인한다.   - 포인터가 target 인 수이면, 다음으로 이동시키면서 끝까지 진행한다.   코드구현 :  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = n..

JAVA/Coding Test 2024.06.09

[JAVA] 백준 13144 List of Unique Numbers_큐

https://www.acmicpc.net/problem/13144 접근 :   - 중복된 숫자가 나올 때까지 큐에 집어 넣는다.  - 중복된 숫자가 나오면 큐에서 중복된 숫자가 나올때까지, 정답에 큐의 크기 만큼 더하고 큐에서 수를 하나씩 뺀다.   - 끝까지 도달하면 큐에 남은 사이즈(n)를 이용하여 나머지 계산( n*(n+1)/2 )을 하여 정답에 더한다.   코드구현 :  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { public static void main(String[] args) throws IOExce..

JAVA/Coding Test 2024.06.07

[JAVA] 백준 2002 추월_반복문(포인터 설정)

https://www.acmicpc.net/problem/2002 접근 :   - 들어간 차량 순서대로 배열에 저장한다.  - 나가는 차량을 체크해서 들어간 차량과 일치하지 않으면 Set에 저장 후 다음 차량으로 넘어간다.  - 차량을 체크하기전 들어온 차량이 추월하였는지 확인하고 추월하지 않은 차량까지 flag를 이동시킨다.   코드구현 :  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;import java.util.Set;public class Main { public static void main(String[] args) throws..

JAVA/Coding Test 2024.06.07

[JAVA] 백준 13335 트럭_큐

https://www.acmicpc.net/problem/13335  접근 :   - 다리의 길이 만큼 큐를 만든다.  - 다리가 트럭을 더 지탱할 수 있으면 트럭을 큐에 집어 넣고 만약 지탱할 수 없으면 0 을 넣는다.  - 마지막 트럭까지 다리에 넣은 후, 마지막 트럭이 다리를 빠져나올 때 까지 시간을 기록 후 출력한다.   코드구현 : import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ..

JAVA/Coding Test 2024.06.06