-
알고리즘 달팽이 java과거⚰️ 2020. 12. 6. 19:11
package ex; public class practice { public static void main(String[] args) { int x=0; int c = 1; int n = 5; int f = n; int a=0; int b =-1; int[][]sn = new int[n][n]; while (true) { for (int i=0; i<f; i++){ x++; b+=c; sn[a][b]=x; } f--; if(f<0){ for (int i=0; i<n; i++){ for (int j=0; j<n; j++){ System.out.print(sn[i][j]+"\t"); } System.out.println(); } break; } for (int i=0; i<f; i++){ x++; a+=c; sn[a][b]=x; } c=c*-1; } } }
새로운 풀이
x에 넣어야할 수를 기록하고 a, b에 인덱스를 넣어 순서대로 달팽이 기록
f에는 달팽이의 범위를 넣어서 수가 겹쳐들어가지 않게 1씩 감소하며 가로 세로를 반복하며 수를 넣고
끝에 c에 -1을 곱해서 음수로 변환후 반대로 f가 0보다 작아질때까지 수를 넣기를 반복한다
'과거⚰️' 카테고리의 다른 글
메서드 문제 1, 2, 3 (0) 2020.12.08 메소드 기본 이론 || 실습 (0) 2020.12.07 css 선택자 (0) 2020.12.05 클래스 1 to 50 || 사다리 || 더하기 (0) 2020.12.04 클래스 omr || 영화관 좌석 || 숫자이동 || 기억력 || 틱택토 (0) 2020.12.03