-
[SWEA] [JAVA] [Difficulty 2] [1961] 숫자 배열 회전SW Expert Academy 2022. 11. 17. 16:48
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
import java.util.*; import java.io.*; public class Solution { // 90 돌리는 함수 static int[][] rotate90(int arr[][]) { int len = arr.length; int result[][] = new int[len][len]; for(int i=0; i<len; i++) { for(int j=0; j<len; j++) { result[i][j] = arr[len-1-j][i]; } } return result; } public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; StringBuilder sb = new StringBuilder(); int T= Integer.parseInt(br.readLine()); // 테스트케이스 for(int tc=1; tc<=T; tc++) { int N = Integer.parseInt(br.readLine()); // N * N 행렬 int arr[][] = new int[N][N]; // 행렬 초기화 for(int i=0; i<N; i++) { st = new StringTokenizer(br.readLine()," "); for(int j=0; j<N; j++) { arr[i][j] = Integer.parseInt(st.nextToken()); } } int arr90[][] = new int[N][N]; int arr180[][] = new int[N][N]; int arr270[][] = new int[N][N]; arr90 = rotate90(arr); arr180 = rotate90(arr90); arr270 = rotate90(arr180); sb.append("#"+ tc + "\n"); for(int i=0; i<N; i++) { // 90도 돌렸을 떄의 행렬 for(int j=0; j<N; j++) { sb.append(arr90[i][j]); } sb.append(" "); // 180도 돌렸을 떄의 행렬 for(int j=0; j<N; j++) { sb.append(arr180[i][j]); } sb.append(" "); // 270도 돌렸을 떄의 행렬 for(int j=0; j<N; j++) { sb.append(arr270[i][j]); } sb.append('\n'); } } System.out.println(sb); } }
'SW Expert Academy' 카테고리의 다른 글
[SWEA] [JAVA] [Difficulty 2] [2001] 파리 퇴치 (0) 2022.11.18 [SWEA] [JAVA] [Difficulty 2] [1954] 달팽이 숫자 (0) 2022.11.17 [SWEA] [JAVA] [Difficulty 2] [1966] 숫자를 정렬하자 (0) 2022.11.17 [SWEA] [JAVA] [Difficulty 2] [1940] 가랏! RC카! (0) 2022.11.16 [SWEA] [JAVA] [Difficulty 2] [1948] 날짜 계산기 (0) 2022.11.16