Algorithm/[BOJ] - JAVA

[백준] 10992 : 별 찍기 - 17 JAVA 풀이

Codew 2022. 6. 3. 22:53

첫줄 - 중간 - 마지막줄로 나눠서 코드를 작성했다.

하나의 반복문 안에서 첫번째줄일 때와 마지막줄일 때를 if문으로 검사할까했지만

반복문을 돌면서 계속 검사를 하니 실행시간이 더 오래걸리지 않을까 해서 따로 분리를 해버렸다.

음.....실행시간이 크게 다르지는 않을 텐데 아직 무엇을 우선시해야 하는지를 잘 모르겠다.

import java.io.*;
public class ArrayEx1{
    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 = " ";

        sb.append(space.repeat(N-1)).append(str).append('\n');
        for(int i=1;i<N-1;i++){
            sb.append(space.repeat(N-i-1)).append(str).append(space.repeat(i*2-1)).append(str);
            sb.append('\n');
        }
        if(N!=1) sb.append(str.repeat(N*2-1));
        System.out.print(sb);
      }
}