https://www.acmicpc.net/problem/2447
package AtoI;
import java.util.Arrays;
import java.util.Scanner;
public class N2447 {
private static final Scanner scan = new Scanner(System.in);
private static char[][] star;
public static void main(String[] args) {
int N = scan.nextInt();
star = new char[N][N];
for(int i=0; i<N; i++) {
Arrays.fill(star[i], ' ');
}
starDraw(0, 0, N);
for( int i=0; i<N; i++) {
System.out.println(star[i]);
}
}
public static void starDraw (int x, int y, int t) {
if ( t == 1) {
star[x][y] = '*';
return;
}
int M = t/3;
for(int i=0; i<3; i++) {
for (int j=0; j<3; j++) {
if ( i==1&j==1) {
continue;
}
starDraw(x+M*i, y+M*j, M);
}
}
}
}
그림에서 빈 부분을 볼 수 있는데 그 부분은 별을 채우지 않기 위해서 continue 구문 사용.
'Coding Test' 카테고리의 다른 글
[소프티어] 장애물 (0) | 2023.11.17 |
---|---|
#1541 (0) | 2021.05.18 |
#10989 수 정렬하기3 (0) | 2021.03.30 |
#2562 최댓값 구하기 JAVA (0) | 2021.03.30 |
#1152 단어의 개수 JAVA (0) | 2021.03.30 |