프로그래머스 문제풀이/Level 1

[프로그래머스] 직사각형 별 찍기

류시명 2020. 4. 15. 15:48

문제 설명

이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.

제한 조건

  • n과 m은 각각 1000 이하인 자연수입니다.

예시

  • 입력

    5 3
  • 출력

*****
*****
*****

접근

행의 개수는 부모 반복문, 열의 개수는 자식 반복문의 반복 횟수가 결정한다.

구현

process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
    const n = data.split(" ");
    const a = Number(n[0]), b = Number(n[1]);
    // a는 열. b는 행. b는 부모 반복문, a는 자식 반복문
    for (let i = 0; i < b; i++) {
        let star = "";
        for (let j = 0; j < a; j++) {
            star += "*";
        }
        console.log(star);
    }
});

다른 사람의 풀이

템플릿 리터럴, repeat() 메소드, 이스케이프 문자 등을 활용한 멋진 풀이

process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
    const n = data.split(" ");
    const a = Number(n[0]), b = Number(n[1]);
    const star = `${'*'.repeat(a)}\n`;

    console.log(star.repeat(b));
});
반응형