Algorithms/프로그래머스

[프로그래머스] '직각삼각형 출력하기' - Java

LEFT 2023. 2. 22. 15:39

<문제 제시>

"*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요.

<예시 입출력>


<문제 해결 과정>

간단히 이중 반복문을 통해서 별을 출력하는 문제인 것 같았다. 

첫째줄로부터 줄이 증가할수록 별의 개수도 증가하면 되는 것이다. 

i와 j로 이중 반복문을 잡고 j는 i까지 반복해주면 될것 같았다. print()문으로 별을 공백없이 옆에 붙여서

반복 출력해주면 된다.

for(int i = 1; i <= n; i++) {
    for(int j = 1; j <= i; j++) {
        System.out.print('*');
    }
    System.out.println();
}

<전체코드>

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 = 1; i <= n; i++) {
        	for(int j = 1; j <= i; j++) {
        		System.out.print('*');
        	}
        	System.out.println();
        }
    }
}

이번에는 간단히 처리해보기 위해서 Scanner 클래스를 사용하였다. 좀 더 빠른 처리속도를 원하면 시스템 입출력으로 BufferedReader 클래스를 사용하면 될 것 같았다. 이중반복문으로 별을 출력하는 문제 중 조금의 응용이 들어간 문제였다.


문제링크)
https://school.programmers.co.kr/learn/courses/30/lessons/120823

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr