JAVA 백준 알고리즘 문제풀이/반복문
[백준 BOJ 2438번] 별 찍기-1
Xerath(제라스)
2022. 3. 28. 02:21
728x90
반응형
출처 : https://www.acmicpc.net/problem/2438
2438번: 별 찍기 - 1
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
www.acmicpc.net
1. 문제
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
2. 입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
5
3. 출력
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
*
**
***
****
*****
4. 풀이
잘못 보면 이중 for문을 써야할 듯해 보인다. *의 출력을 진행시키고 그 라인마다 *의 개수가 늘어나니 그만큼 또 출력하려니 말이다. 하지만 StringBuilder를 쓰면 쉬워진다. 일단 N을 입력받고 for문을 돌린다. 이때 sb에 *을 append해주고 출력을 하면 sb에 *이 쌓이기 때문에 굳이 각 행마다 *을 몇번을 출력하는 수고를 덜 수 있다.
5. 소스코드
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));
StringBuilder sb = new StringBuilder();
int N = Integer.parseInt(br.readLine());
for(int i=1; i<=N; i++){
sb.append("*");
System.out.println(sb);
}
}
}
6. 배운 것
반복되고 그 길이가 일정하게 늘어나는 출력이 있다면 StringBuilder를 쓸 차례이다.
728x90
반응형