백준 알고리즘/반복문

백준 2439번 :: 별 찍기 -2 (오른쪽 정렬)

Sun720 2022. 5. 24. 10:46

▶ 문제

https://www.acmicpc.net/problem/2439

 

2439번: 별 찍기 - 2

첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.

www.acmicpc.net

 설명

 

이전에 풀었던 별찍기 1의 변형 문제이다. 이전문제 ->https://jumping-to-the-water.tistory.com/33

 

별을 오른쪽 정렬 하려면 공백+별 을 함께 출력해야한다.

전 문제와 다른 점은 공백의 수는 점점 줄어들고, 별의 수는 늘어나야 한다는 점이다.

생각한 대로 코드 구조를 만들어 보면 이렇게 된다.

for 문 안에 for 문을 2번 수행 시켜야 한다.

공백을 출력하는  for문의 조건식은 큰 수에서 작은 수로 --연산을 이용해서 감소시켜야 하는 것이 포인트이다.

 

 

문제 풀이

🌱 풀이

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringBuilder sb = new StringBuilder();

		int rowCnt = Integer.parseInt(br.readLine());

		for (int i = 1; i <= rowCnt; i++) {
			for (int j = rowCnt-i; j > 0; j--) {
				sb.append(" ");
			}
			for (int j = 0; j < i; j++) {
				sb.append("*");
			}
			sb.append("\n");
		}
	}
}

 

 

Log

728x90
반응형

'백준 알고리즘 > 반복문' 카테고리의 다른 글

[JAVA] 백준 1110번 :: 더하기 싸이클  (0) 2022.05.24
백준 2438번 :: 별 찍기 - 1  (0) 2022.05.24
백준 11021번 :: A+B -7  (0) 2022.05.24
백준 2742 :: 기찍 N  (0) 2022.05.23
백준 2741번 :: N 찍기  (0) 2022.05.23