Link
문제
첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×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(2 * i - 1));
}
풀이과정
이전 문제들과 같이 공백과 '*'이 어떤 규칙을 가지고 반복되는지 찾으면 쉽게 풀 수 있다.
공백의 개수는 5, 4, 3, 2, 1로 줄어들고 '*'은 문제에서도 주어졌듯이 2 x N - 1개이다.
repeat을 사용해서 공백과 '*'을 반복해주면 된다.
개념
String.prototype.repeat()
- 문자열을 지정한 횟수만큼 반복해 새로운 문자열을 반환한다.
- 반복 횟수는 0보다 큰 양의 정수이며, 최대 문자열 크기를 넘으면 RangeError 발생
유사한 문제
Comment
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준] 2522: 별 찍기 - 12 (javascript) (2) | 2022.11.30 |
---|---|
[백준] 2445: 별 찍기 - 8 (javascript) (0) | 2022.11.30 |
[백준] 2441: 별 찍기 - 4 (javascript) (0) | 2022.11.24 |
[백준] 2440: 별 찍기 - 3 (javascript) (0) | 2022.11.24 |
[백준] 1924: 2007년 (javascript) (0) | 2022.11.23 |