Link
문제
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
입력 > 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력 > 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.
| 예제 입력
5
| 예제 출력
*********
*******
*****
***
*
***
*****
*******
*********
제출
const fs = require("fs");
const input = Number(
process.platform === "linux" ? fs.readFileSync("/dev/stdin").toString() : `5`
);
let result = [];
let reverseResult = [];
let blank = 0;
let star = input * 2 - 1;
for (let i = 1; i <= input; i++) {
result.push(" ".repeat(blank) + "*".repeat(star));
blank = i;
star -= 2;
}
reverseResult = result.slice(0, -1).reverse().join("\n");
console.log(result.join("\n"));
console.log(reverseResult);
풀이과정
공백과 별의 개수를 blank, star라는 변수로 두고 문제를 풀었다.
이전에 풀었던 별 찍기 - 8 문제에 비해 조금 더 코드가 깔끔해 보인다😀
유사한 문제
Comment
비슷한 유형의 문제를 반복해서 풀면서 다르게 풀 수 있는 방법은 무엇일까 고민하게 되었다.
다양한 접근을 해볼 수 있던 점이 좋았다!
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준] 10992: 별 찍기 - 17 (javascript) (0) | 2022.12.01 |
---|---|
[백준] 10991: 별 찍기 - 16 (javascript) (0) | 2022.11.30 |
[백준] 2522: 별 찍기 - 12 (javascript) (2) | 2022.11.30 |
[백준] 2445: 별 찍기 - 8 (javascript) (0) | 2022.11.30 |
[백준] 2442: 별 찍기 - 5 (javascript) (0) | 2022.11.24 |