PS
백준 16927. 배열 돌리기 2
tose33
2022. 8. 22. 13:59
https://www.acmicpc.net/problem/16927
16927번: 배열 돌리기 2
크기가 N×M인 배열이 있을 때, 배열을 돌려보려고 한다. 배열은 다음과 같이 반시계 방향으로 돌려야 한다. A[1][1] ← A[1][2] ← A[1][3] ← A[1][4] ← A[1][5] ↓ ↑ A[2][1] A[2][2] ← A[2][3] ← A[2][4] A[2][5]
www.acmicpc.net
가장 쉬운방법은 한 번씩 돌리는 함수를 만들고 R번 돌리는 것이지만 R의 최댓값이 10^9기 때문에 불가능하다.
각 숫자들을 R번 돌렸을때 위치를 한번에 계산해야 한다.
나는 각 사각형의 둘레를 구하고, 그 사각형의 둘레를 돌면서 다음 위치를 계산해 줬다.
(현재 인덱스 + R) % 사각형 둘레 가 다음 위치가 된다.