본문 바로가기

삼성역량테스트2

BOJ G5 20055 컨베이어 벨트 위의 로봇 JAVA 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 문제를 한 번 읽고 자료구조를 뭘 쓰면 좋을 지 고민했다. 컨베이어 벨트는 고정된 2N 길이이기 때문에 배열에 담고, 벨트가 회전하는 것은 직접적으로 계속 배열의 값을 돌리는 게 아니라 컨베이어 벨트의 시작 인덱스와 끝 인덱스를 담아놓고 조작하는 방식이 더 효율적일 것이라 생각했다. 그리고 로봇의 경우에는 제한 없이, 종료 조건을 만족하기 전까지는 무한정으로 추가가 가능하기 때문에 Queue를 쓸까 하다가, 회전(이동)하는 동작(수정), 추가.. 2023. 7. 15.
BOJ G5 21610 마법사 상어와 비바라기 JAVA 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 문제 읽기 r, c가 1부터 시작한다는 점, d도 1~8 까지라는 점, 등만 유의하면 설명대로 구현하면 되는 문제이다. 실수한 부분 인덱스 1부터 인덱스 1부터 시작하는 게 많아서 입력 받은 후에 -1을 한 후 대입해서 시작했다. 그러다보니 s에도 -1을 해버려서.. 잠깐 틀렸는데 다시 보고 내니 맞았당! 코드 package ps.ㄱSolving; import java.io.BufferedReader; import java.io.IOException; im.. 2023. 7. 15.