시뮬레이션
-
백준21610) 마법사 상어와 비바라기 (lv.골드5)알고리즘/백준 2022. 8. 19. 17:41
https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 시뮬레이션 및 구현 유형의 문제이다. 문제의 단계는 다음과 같다. 이동방향은 (0, -1), (-1, -1), (-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1)이다. n*n 만큼의 board와 , m 번의 이동방향 및 이동 카운트가 주어진다. 처음 구름의 위치는 (n-2, 0), (n-2, 1), (n-1, 0), (n-1, 1)이다. 구름이 주어진 ..
-
백준 14891) 톱니바퀴 (골드.5)알고리즘 2022. 8. 2. 19:11
https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 시뮬레이션 유형의 문제이다. 문제의 조건은 다음과 같다. 1) 1은 시계방향 -1은 반시계방향을 말한다. 2) 주어진 시계의 회전을 실시할 때에는 양옆의 시계와 맞닿은 부분을 확인하여 만약 서로 다른 극을 가지고 있으면 회전, 아니면 회전하지 않는다. 3) 서로 같은 극을 가진 시계를 만날 때까지 회전은 퍼져나간다. 4) 최종 시계의 모양에서 12시 방향의 극이 N극일 때 각각 1, 2, 4,..
-
백준 14503) 로봇청소기 (골드.5)알고리즘 2022. 8. 2. 19:03
https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 시뮬레이션 유형의 문제이다. 문제의 조건은 다음과 같다. 1) 청소기가 바라보는 방향은 북동남서의 순서로 나타낸다. 2) 청소기가 바라보는 방향에 청소할 곳이 없거나 벽이면 왼쪽으로 회전한다. 3) 바라보는 방향에 청소할 곳이 있으면 이동하여 청소하고 해당 방향에서 반복한다. 4) 청소할 곳이 없으면 바라보는 방향을 유지하고 한칸 후진하여 해당 위치에서 반복한다. 5) 청소할 곳이 없고 후진하..
-
백준 17140) 이차원 배열과 연산 (골드.4)알고리즘 2022. 8. 2. 18:34
https://www.acmicpc.net/problem/17140 17140번: 이차원 배열과 연산 첫째 줄에 r, c, k가 주어진다. (1 ≤ r, c, k ≤ 100) 둘째 줄부터 3개의 줄에 배열 A에 들어있는 수가 주어진다. 배열 A에 들어있는 수는 100보다 작거나 같은 자연수이다. www.acmicpc.net 문제의 조건에 따라 구현하는 시뮬레이션 문제이다. 조건을 확인하면 다음과 같다. 1) 행의 갯수가 열의 갯수보다 많거나 같으면 R연산을 시행하고 그렇지 않으면 C연산을 실행한다. 2) 연산은 행 및 열의 원소와 원소의 갯수를 나타내고 가장 긴 행이나 열보다 작으면 0으로 채워주는 것을 말한다. 3) 만약 행이나 열이 100보다 크면 100 이상의 열이나 행은 자른다. 4) 한번의 연산..
-
백준 3190) 뱀 (골드.4)알고리즘/백준 2022. 7. 13. 23:10
https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 시뮬레이션 문제로 조건에 따라 이동시키는 문제이다. 조건을 확인하면 다음과 같다. 1) 뱀은 0, 0 위치에서 시작하여 처음엔 오른쪽으로 이동한다. 2) 방향조건이 D일 경우 오른쪽, L일 경우 왼쪽으로 이동한다. 3) 시간조건은 처음 이동을 시작할 때부터 방향을 바꿀때 까지의 시간을 나타낸다. 4) 이동할 칸에 사과가 있으면 뱀의 꼬리는 줄어들지 않는다. 5) 이동할 칸에 사과가 없으면 뱀의 꼬리는 한..
-
백준 14499) 주사위 굴리기 (골드.4)알고리즘/백준 2022. 7. 13. 22:56
https://www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x, y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지 www.acmicpc.net 단순 구현의 문제라고 생각하고 문제에 주어진 주사위 모양을 참고하여 구현하였다. 조건을 확인하면 다음과 같다. 1) 이동 방향이 동서북남 2) 지도상 좌표의 숫자가 0일 경우 이동한 주사위의 밑면의 숫자를 복사할 것 3) 지도상 좌표의 숫자가 0이 아닐 경우 주사위 밑면에 지도상의 숫자를 복사하고 지도상 좌표의 수는 0으로 만들 것..