이 문제에서는 크기가 n인 계단을 출력해야 합니다.
계단의 기초와 높이는 모두 n과 같으며, # 기호와 공백을 사용하여 그려집니다.
마지막 줄은 공백 없이 시작합니다.
풀이 :
function staircase(n: number): void {
const list = new Array(n).fill(' ')
for(let i=1; i<n+1; i++){
list[n - i] = '#';
console.log(list.join(''));
}
}
n 크기의 배열을 생성하고 fill 메서드를 활용하여 모든 요소를 공백으로 초기화합니다. for문으로 배열을 순회하면서 배열의 끝 자리의 요소를 '#'으로 변경한 뒤 join 메서드를 통해 배열의 요소를 문자열로 결합하여 출력합니다.
다른 풀이:
function staircase(n: number): void {
for (let i = 1; i <= n; i++) {
let line = ' '.repeat(n - i) + '#'.repeat(i);
console.log(line);
}
}
repeat 메소드를 사용하여 각 줄에 필요한 공백과 # 기호의 수를 조절하여 문자열을 생성합니다.
'Fundamentals > Algorithms' 카테고리의 다른 글
[해커랭크] Time Conversion (0) | 2023.11.16 |
---|---|
[해커랭크] Birthday Cake Candles (0) | 2023.11.15 |
[해커랭크] Mini-Max Sum (0) | 2023.11.14 |
[해커랭크] Diagonal Difference (0) | 2023.11.13 |
[해커랭크] A Very Big Sum (0) | 2023.11.10 |