TIL11: [알고리즘] 직사각형 별찍기
문제
이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.
입출력 예시
| 입력 | 출력 |
| 5 3 | ***** ***** ***** |
나의 풀이
process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
const n = data.split(" ");
const a = Number(n[0]), b = Number(n[1]);
let star = `${"*".repeat(a)}\n`
let starB = star.repeat(b)
console.log(starB)
});
1) string.repeat과 \n을 활용해 줄바꿈이 되는 가로줄 별을 만든다.
2) 다시 string.repeat을 화룡해 세로줄을 만들고 반환한다.
다른사람의 풀이
process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
const n = data.split(" ");
const a = Number(n[0]), b = Number(n[1]);
let result = "";
for (let i = 0; i < b; i++) {
for (let j = 0; j < a; j++) {
result += '*';
}
result += '\n'
}
console.log(result);
});
1) 반복문을 2번 돌려 별모양을 만든다.
2) 반복되는 개수만큼 “*“을 그리고 그 뒤에 \n으로 줄바꿈을 붙인 뒤 세로줄만큼으로 반복한다.
댓글남기기