반응형
문제
풀이
3일 경우
[3][3] 배열에서
빈칸이 있는 중앙 [1][1] 인 것
9일 경우 [9][9]일 경우
3x3으로 나눈 중앙의 곳 빈칸
코드
import java.util.Scanner;
public class Main {
static char[][] arr;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
arr = new char[N][N];
StringBuilder sb = new StringBuilder();
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
arr[i][j] = ' ';
}
}
star(0, 0, N);
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
sb.append(arr[i][j]);
}
sb.append("\n");
}
System.out.println(sb);
}
public static void star(int x, int y, int n) {
if (n == 1) {
arr[x][y] = '*';
return;
}
n /= 3;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (i == 1 && j == 1) {
continue;
}
star(x + (i * n), y + (j * n), n);
}
}
}
}
재귀함수는 이해가 힘든 느낌이다
반응형
'알고리즘 > 백준' 카테고리의 다른 글
백준 10814 문제 자바 java (0) | 2021.01.12 |
---|---|
백준 2108번 자바 java (0) | 2020.12.24 |
백준 10989번 자바 java (0) | 2020.12.23 |
백준 2751번 자바 java (0) | 2020.12.17 |
백준 1002번 자바 java (2) | 2020.12.15 |
댓글