목록구현 (104)
기록방
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bOeSsc/btr8Ity75qn/66SrQolXM2GxZfdKKauUU1/img.png)
👉 문제링크 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 🔸 문제 분석 🔸 공기청정기로 인한 위쪽 공기 순환과 아래쪽 공기 순환이 일어난다. 먼지는 매 초 확산한다. T초 후 방에 남아있는 미세먼지의 합을 출력한다. 🔸 코드 🔸 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { private st..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/1ErQz/btr8u1XYy41/a5cqZTNsKpSvqLZQ6HmgJK/img.png)
👉 문제링크 13460번: 구슬 탈출 2 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net 🔸 문제 분석 🔸 N x M 보드판에 모서리는 막혀있고, 빨간 공 : R, 파란 공 : B, 구멍 : O 가 주어진다. 보드판을 기울이면 두 공이 움직일 수 있는 공간 끝까지 한쪽으로 이동한다. 빨간 공 만 구멍으로 뺄 수 있으면 1, 없으면 0 을 출력한다. 보드판을 기울이는 4가지 선택에 따른 결과를 확인해야 하므로 BFS를 사용한다. 공의 굴러감, 게임 종료 확인을 시뮬레이션한다. 🔸 코드 🔸 i..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/PZ2RL/btr8BfgPR1R/ocgexnIFRSlb2jy7W7w2gK/img.png)
👉 문제링크 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 🔸 문제 분석 🔸 N x N 공간에 물고기 M마리와 아기 상어 1마리가 있다. 아기 상어가 최단 거리로 물고기를 모두 먹은 시간을 출력한다. 물고기의 수가 맵 정보를 입력받아야 알 수 있으므로 ArrayList에 저장한다. 남은 물고기가 여러 마리 일 때 아기 상어는 먹을 수 있는 가장 가까운 물고기를 찾아가는데, 그런 물고기가 여러 마리 일 때는 위쪽, 그 중에서도 왼쪽부터 먹으러 간다. 물고기를 저장 할 때 한 열씩 차례대로 확인했으면 Ar..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/uGXNf/btr8lnnRlOq/j08kVMA35GnGL7K2fhoik0/img.png)
👉 문제링크 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net 🔸 문제 분석 🔸 N x N 지도에서 지나갈 수 있는 길이 몇 개인지 출력한다. 길을 지나가려면 높이가 모두 같거나, 경사로를 설치해야 한다. 경사로는 높이 차이가 1이고, L 만큼의 공간이 확보되어야 한다. 또, 경사로는 반대 방향으로 겹칠 수 없고, 맵을 벗어나서는 안된다. (가로,세로는 겹쳐도 된다) 행과 열 한 줄씩 복사해서 확인하는 방식으로 지나갈 수 있는 길을 카운트한다. 경사로를 놓은 곳을 체크하면서 지나갈 수 있는지 확인한다. 🔸 코드 🔸 import java..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/baTIiU/btr8vrPwSBe/AcTNSyBOnWmIh4mAMutJA1/img.png)
👉 문제링크 13459번: 구슬 탈출 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net 🔸 문제 분석 🔸 N x M 보드판에 모서리는 막혀있고, 빨간 공 : R, 파란 공 : B, 구멍 : O 가 주어진다. 보드판을 기울이면 두 공이 움직일 수 있는 공간 끝까지 한쪽으로 이동한다. 빨간 공 만 구멍으로 뺄 수 있으면 1, 없으면 0 을 출력한다. 보드판을 기울이는 4가지 선택에 따른 결과를 확인해야 하므로 BFS를 사용한다. 공의 굴러감, 게임 종료 확인을 시뮬레이션한다. 🔸 코드 🔸 imp..