알고리즘 풀이
[백준]2438번: 별 찍기 - java 풀이
코디드
2023. 3. 31. 22:31
가장 기본적인 별 찍기 문제다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
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();
for(int i=1; i<N+1; i++) {
for(int j=1; j<i+1; j++) {
sb.append("*");
}
sb.append("\n");
}
System.out.println(sb);
}
}
1행에는 한 개, 2행에는 두 개, 3행에는 세 개 이렇게 찍어주면 되므로,
밖의 for문은 N번만큼 반복 되고, 내부의 for문은 행의 숫자만큼 '*' 이 찍히도록 반복되면 된다
그러므로 1행은 j가 1, 2행은 j가 1부터 2까지, 3행은 j가 1부터 3까지 반복되게 j<=i 또는 j<i+1로 범위를 설정해준다.
이 문제의 경우 N값에 따라 반복문이 높은 빈도수로 실행되다 보니 System.out.println보다는 StringBuilder나 BufferedWriter를 사용해주는게 좋다.