괄호 안에 있는 것이 공백의 개수라고 하면 N = 3일 때 출력해야 할 내용은 다음과 같다.
(n-1)*
(n-2)*(n-2)*
(n-3)*(n-2)*(n-2)*
행마다 한 행에서 첫 번째 별이 나오기까지의 공백의 개수가 달라지는 것과,
별과 공백이 번갈아서 나오는 것에서 규칙을 찾아 코드를 작성했다.
import java.io.*;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
String str = "* ";
String space = " ";
for(int i=0;i<N;i++){
sb.append(space.repeat(N-i-1)).append(str.repeat(i+1)).append('\n');
}
System.out.print(sb);
}
}
시간이 좀 지나고 다시 풀어봤다.
달라진 건 거의 없지만 그래도 올려본다.
import java.io.*;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
String space = " ";
String star = "* ";
StringBuffer sb = new StringBuffer();
for(int i=n-1;i>=0;i--){
sb.append(space.repeat(i)).append(star.repeat(n-i)).append("\n");
}
System.out.print(sb);
}
}
'Algorithm > [BOJ] - JAVA' 카테고리의 다른 글
[백준] 1924 : 2007년 JAVA 풀이 (0) | 2022.06.03 |
---|---|
[백준] 10992 : 별 찍기 - 17 JAVA 풀이 (0) | 2022.06.03 |
[백준] 2446 : 별 찍기 - 9 JAVA 풀이 (0) | 2022.06.03 |
[백준] 2522 : 별 찍기 - 12 JAVA 풀이 (0) | 2022.06.03 |
[백준] 2445 : 별 찍기 - 8 JAVA 풀이 (0) | 2022.06.03 |