-
package Day056; import java.util.Scanner; /* * 문제) 아래 명령어를 입력받을때마다 block배열을 회전해보세요 * 예) 1) left_turn * 4 8 12 16 * 3 7 11 15 * 2 6 10 14 * 1 5 9 13 */ public class Ex00603테트리스회전답없음 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int block[][] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13,14, 15, 16}, }; int size = block.length; int tmpBlock[][] = new int[size][size]; while(true) { for (int i=0; i<size; i++){ for (int j=0; j<size; j++){ tmpBlock[i][j]=block[i][j]; } } for(int i=0; i<block.length; i++) { for(int j=0; j<block[i].length; j++) { System.out.print(block[i][j] + "\t"); } System.out.println("\n"); } System.out.println(); System.out.println("(1)left (2)right"); int move = scan.nextInt(); if(move == 1) { for (int i=0; i<block.length; i++){ for (int j=0; j<block[i].length; j++){ block[i][j]=tmpBlock[j][size-1-i]; } } } else if(move == 2) { for (int i=0; i<block.length; i++){ for (int j=0; j<block[i].length; j++){ block[j][size-1-i]=tmpBlock[i][j]; } } } } } }좌표쓰면서 규칙을 찾아보면 생각보다 간결하게 가능했다
컴퓨터처럼 생각을 해주자
'과거⚰️' 카테고리의 다른 글
ArrayList (0) 2020.12.17 숫자합치기 답없음 (0) 2020.12.16 생성자이론 || 오버로딩 1, 2 || 캡슐화1, 2 || 래퍼클래스 (0) 2020.12.14 클래스 배열 3, 4 || 학생컨트롤러 || 고객관리 || 문자열 1, 2, 답없음 (0) 2020.12.13 클래스배열 중복숫자금지 || 클래스배열 이론1 || 클래스배열 이론2 || 클래스배열 자리예매 || 클래스배열 틱택토 || 클래스배열 로또한세트 || 클래스 경마게임 || 클래스배열 회원가입 || 클래.. (0) 2020.12.12