프로그래머스.직각삼각형 출력하기

남궁진 (jinvicky)·2026년 4월 1일

Problem


https://school.programmers.co.kr/learn/courses/30/lessons/120823

*을 이용해서 직각 이등변 삼각형을 그려야 한다.
정수 n이 주어지면 높이와 너비가 n인 직각 이등변 삼각형을 출력해라.

Solution


초딩 때 별찍기를 한 적이 있는데 이런 문제는 작은 테스트 케이스로 직접 그려보는 것이 i와 j의 조건을 알기에 가장 쉬웠다.

그림에서 보다시피 i>=j일 때 별을 찍으면 이등변 삼각형이 완성되는 것을 알 수 있다.
다만 *을 1개씩 출력하는 오류를 범할 수 있으니 StringBuilder를 바깥쪽 for문에 선언하고 내부 for문이 끝났을 때 append + 리셋해주는 과정을 잊지 말아야 한다.

Code


import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        
        for(int i = 0; i < n; i++) {
            StringBuilder sb = new StringBuilder();
            for(int j = 0; j < n; j++) {
                if(i >= j) {
                    sb.append("*");
                }
            }
            sb = new StringBuilder();
            // sb.setLength(0); 하는 방법도 있다. 
        }
    }
}
profile
문제를 차근차근 하나씩 해결하려고 합니다:)

0개의 댓글