자바54 백준 2174 로봇 시뮬레이션 백준 2174 로봇 시뮬레이션 1. 문제 링크 https://www.acmicpc.net/problem/2174 2174번: 로봇 시뮬레이션 첫째 줄에 두 정수 A, B가 주어진다. 다음 줄에는 두 정수 N, M이 주어진다. 다음 N개의 줄에는 각 로봇의 초기 위치(x, y좌표 순) 및 방향이 주어진다. 다음 M개의 줄에는 각 명령이 명령을 내리는 순 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. input의 2차원 배열 인덱스가 좌측 하단부터 시작되므로, 익숙한 형태로 보정해야 한다. 2. 명령 정보를 담을 Command 클래스, 로봇 정보를 담을 Robot 클래스가 필요하다. 3. Robot 타입의 2차원 배열을 선언하고, 그 위에서 로봇을 움직인다. 4. 나머지는 문제에서 요구하.. 2021. 9. 7. 백준 7576 토마토 백준 7576 토마토 1. 문제 링크 https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. input으로 토마토 상자에 대한 정보를 받을 때, 익은 토마토의 위치를 큐에 담는다. 2. 큐가 빌 때까지 BFS를 통해 안 익은 토마토를 익게 한다. 3. 이 때 weight 배열에 토마토가 익은 날짜를 기록한다. 4. BFS가 끝나면 토마토 상자를 순회하며 안 익은 토마토가 있는지 확인하고, 최대가중치.. 2021. 9. 7. 백준 1012 유기농 배추 백준 1012 유기농 배추 1. 문제 링크 https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 2. 문제 해결에 대한 아이디어 input으로 들어온 2차원 배열을 순회하며 1(배추가 심어져 있는 땅)에 대해 BFS를 수행한다 BFS를 수행한 카운트를 출력한다. 3. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.ut.. 2021. 9. 6. 백준 4963 섬의 개수 백준 4963 섬의 개수 1. 문제 링크 https://www.acmicpc.net/problem/4963 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. Input으로 받은 2차원 배열을 순회하면서 1로 되어 있는 위치에서 BFS를 수행한다. 2. BFS를 수행한 카운트를 출력한다. 3. 대각선도 접근할 수 있는 것을 간과하면 안 된다. 3. 코드 import java.io.BufferedReader; import java.io.IOException; import .. 2021. 9. 6. 백준 14502 연구소 - 삼성 SW 역량 테스트 기출 백준 14502 연구소 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 이 문제는 벽 3개를 세우는 케이스마다 각각 조사하여 안전영역의 최댓값을 계속 갱신해야 한다. 2. Input으로 연구소 정보에 대한 배열을 받을 때, 두 가지 배열을 사용한다. . board : 각 케이스별로 BFS를 수행할 때 사용할 연구소 정보 . copyBoard : 각 케이스가 끝난 후 boa.. 2021. 9. 5. 백준 2573 빙산 백준 2573 빙산 1. 문제 링크 https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 1년이 지날 때마다 바다와 맞닿은 빙산이 최대 4까지 그 크기가 줄어든다. 2. 이때, 현재의 맵에 바로 반영하는 게 아니라, 임시 맵(copyBoard)을 만들어 다음 해의 빙산의 크기를 기록한다. 3. 나누는 이유는 현재 맵에 반영할 경우, 원래보다 맞닿는 면이 많아져 빙산이 더 녹게 계산될 수 있기 때문이다. 4... 2021. 9. 5. 이전 1 ··· 5 6 7 8 9 다음