[伯俊]No 2447-星を撮る10(JAVA)
11316 ワード



ルール自体は見つけやすいですが、コードで実現することはどうしても考えられません.才能をうまく使えなかったので、もっと疲れました.結局グーグルで答えを検索しました( https://st-lab.tistory.com/95 )
import java.util.Scanner;
import java.io.*;
public class No2447_별찍기10 {
static char [][] arr;
public static void main(String[] args) throws IOException {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
arr= new char[n][n];
star(0,0,n,false);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
for (int i = 0; i < n; i++) {
bw.write(arr[i]); //한줄씩
bw.write("\n");
}
bw.flush();
bw.close();
}
public static void star(int x, int y, int n, boolean blank) {
if (blank) { //공백일때
for (int i=x;i< x+ n ; i++) {
for (int j=y;j<y+n; j++) {
arr[i][j]=' ';
}
}
return ;
}
if (n==1) { //더이상 쪼갤 수 없는 블록일때
arr[x][y]='*';
return ;
}
int size = n/3; //9개짜리 블럭의 크기
int count=0;
for (int i= x;i< x + n; i+=size) {
for (int j=y;j< y+n; j+=size) {
count++;
if (count==5) {
star(i,j,size,true);
}
else {
star(i,j,size,false);
}
}
}
}
}
Reference
この問題について([伯俊]No 2447-星を撮る10(JAVA)), 我々は、より多くの情報をここで見つけました https://velog.io/@kekim20/백준-No2447-별찍기10-JAVAテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol