✏️기록하는 즐거움
article thumbnail

Link

 

2441번: 별 찍기 - 4

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

www.acmicpc.net

 

문제

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

입력 > 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력 > 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.

| 예제 입력

5

| 예제 출력

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

 

제출

const fs = require("fs");

const input =
  process.platform === "linux" ? fs.readFileSync("/dev/stdin").toString() : `5`;

for (let i = 1; i <= input; i++) {
  console.log(" ".repeat(input - i) + "*".repeat(i));
}

 

풀이과정

공백의 개수는 0, 1, 2, 3, 4로 늘어나고 '*'은 5, 4, 3, 2, 1로 줄어드는 형태이다.

따라서 공백은 input - i 만큼 반복시키고, '*'은 i 만큼 반복시키면 된다 !

 

개념

String.prototype.repeat()

  • 문자열을 지정한 횟수만큼 반복해 새로운 문자열을 반환한다.
  • 반복 횟수는 0보다 큰 양의 정수이며, 최대 문자열 크기를 넘으면 RangeError 발생

Comment

 

profile

✏️기록하는 즐거움

@nor_coding

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!