일상

16926 : 배열 돌리기 1

STUDYING,,, 2021. 8. 14. 19:38
import java.util.Scanner;

public class Main2 {

	static int N, M, R;
	static int[][] map;

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		N = sc.nextInt();
		M = sc.nextInt();
		R = sc.nextInt();
		map = new int[N][M];

		for (int i = 0; i < N; i++) {
			for (int j = 0; j < M; j++) {
				map[i][j] = sc.nextInt();
			}
		}
			rotation();

		for (int i = 0; i < N; i++) {
			for (int j = 0; j < M; j++) {
				System.out.print(map[i][j] + " ");
			}
			System.out.println();
		}

	}

	private static void rotation() {
		for (int r = 0; r < R; r++) {
			for (int i = 0; i < (Math.min(N, M))/2; i++) {
				int tmp = map[i][i];

				for (int j = i; j < M - 1 - i; j++) {
					map[i][j] = map[i][j + 1];
				}
				for (int j = i; j < N - 1 - i; j++) {
					map[j][M - 1 - i] = map[j + 1][M - 1 - i];
				}
				for (int j = M - 1 - i; j > i; j--) {
					map[N - 1 - i][j] = map[N - 1 - i][j - 1];
				}
				for (int j = N - 1 - i; j > i; j--) {
					map[j][i] = map[j - 1][i];
				}
				map[i + 1][i] = tmp;
			}
		}
	}
}

'일상' 카테고리의 다른 글

11399 : ATM  (0) 2021.08.16
3985 : 롤 케이크  (0) 2021.08.16
2961 : 도영이가 만든 맛있는 음식  (0) 2021.08.14
2798 : 블랙잭  (0) 2021.08.13
15686 : 치킨 배달  (0) 2021.08.13