백준 20056번 마법사 상어와 파이어볼 (JAVA)
삼성 기출문제 상어시리즈의 마지막 문제인 마법사 상어와 파이어볼이다. 개인적인 난이도의 체감은 청소년 상어가 가장 높았고, 이 문제가 아기상어 다음으로 쉬웠다고 생각한다. 유일하게 조금 고민되는 부분이, 격자의 행과 열은 1번부터 N번까지 번호가 매겨져 있고, 1번 행은 N번 행과 연결되어 있고, 1번 열은 N번 열과 연결되어 있다. 이 조건이 조금 어렵게 읽히지만, 아래의 예시와 함께 천천히 읽어보면 쉽게 이해할 수 있다. ( 사소한 오타도 있어서 좀 더 어렵게 느꼈던 것 같다.) 구현 순서 1. 파이어볼 이동 private static void move() { for (Fire f : fires) { int nx = (f.x + N + dir[f.d][0] * (f.s % N)) % N; int ny..