[BOJ20058] 마법사 상어와 파이어스톰
Updated:
문제
- 2^n*2^n 격자 얼음판
- A[r][c]는 (r, c)의 얼음의 양
- 단계 L => 2^L*2^L 크기의 부분 격자로 나누기
- 부분 격자를 90도 회전
- 인접한 칸 3개 미만이면 얼음 양 1 줄이기
입력
- n, q
- A[r][c]
- q만큼 L1, L2… Lq
출력
- 남은 얼음 A[r][c] 합, 가장 큰 덩어리가 차지하는 칸의 개수
설계
pow(2, n)
or1 << N
을 이용해 2의 제곱으로 변환한 값으로 접근- L단계 만큼 rotation
- 각 격자무늬를 탐색하는 2중 for문
- 격자무늬 내에서 시계방향으로 90도 회전하는 2중 for문
- 사방에 얼음이 3개 미만이면 1 줄이기
- q번 반복
- 얼음 양, bfs이용한 최대 덩어리 양 출력
How I solved(click to github)
ref :
BOJ20058
Leave a comment