본문 바로가기
Problem Solving/SWEA

[SWEA] 1961. 숫자 배열 회전

by 테리는당근을좋아해 2020. 1. 29.

문제

N x N의 2차원 배열에서 시계 방향으로 90도, 180도, 270도로 회전하면서 숫자 출력

 

풀이방법

입력받은 N x N의 2차원 배열을 a[i][j], 출력해야할 N x 3의 2차원 배열을 b[i][j]라고할 때,

 

b[i][1] = a[n-1][i] a[n-2][i] ... a[0][i]

b[i][2] = a[n-i-1][n-1] a[n-i-1][n-2] ... a[n-i-1][0]

b[i][3] = a[0][n-i-1] a[1][n-i-1] ... a[n-1][n-i-1]

 

소스코드

package samsung;

import java.util.*;

public class s_1961 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int test = sc.nextInt();
		for(int t = 1; t <= test; t++) {
			int n = sc.nextInt();
			int[][] a = new int[n][n];
			for(int i = 0; i < n; i++) {
				for(int j = 0; j < n; j++) {
					a[i][j] = sc.nextInt();
				}
			}
			System.out.println("#" + t + " ");
			for(int i = 0; i < n; i++) {
				for(int j = 0; j < n; j++) {
					System.out.print(a[n-j-1][i]);
				}
				System.out.print(" ");
				for(int j = 0; j < n; j++) {
					System.out.print(a[n-i-1][n-j-1]);
				}
				System.out.print(" ");
				for(int j = 0; j < n; j++) {
					System.out.print(a[j][n-1-i]);
				}
				System.out.println();
			}
		}
	}
}

'Problem Solving > SWEA' 카테고리의 다른 글

[SWEA] 1225. 암호생성기  (0) 2020.02.05
[SWEA] 1204. 최빈수 구하기  (0) 2020.02.05
[SWEA] 1966. 숫자를 정렬하자  (0) 2020.01.29
[SWEA] 1970. 쉬운 거스름돈  (0) 2020.01.29
[SWEA] 1974. 스도쿠 검증  (0) 2020.01.29

댓글