[Baekjoon] 2444-⭐별 찍기 - 7

Chobby·2023년 9월 15일
1

Programmers

목록 보기
315/345

😀문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.


😁입력

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.


😂출력

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.


🤣예제

예제 입력 1

  • 5

예제 출력 1

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

😃출처

  • 문제를 만든 사람: baekjoon

😄알고리즘 분류

  • 구현

😎나의 풀이

const input = require('fs').readFileSync('/dev/stdin').toString().trim()
const num = Number(input)
// 한 줄의 공간
const space = 2 * num - 1
const halfLen = Math.floor(space / 2)
let result = ""

// 넓어지는 별
for(let i = 0 ; i < halfLen; i ++) {
    result += 
        " ".repeat(halfLen - i) + 
        "*".repeat(space - (halfLen - i) * 2) + 
        "\n"
}

// 정 가운데 별
result += '*'.repeat(space) + "\n"

// 좁아지는 별
for(let i = halfLen ; i > 0; i --) {
    const curGap = halfLen - i + 1
    result += 
        " ".repeat(curGap) + 
        "*".repeat(space - curGap * 2) + 
        "\n"
}

console.log(result)
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글