Recent Posts
Recent Comments
Link
Today
Total
02-05 20:44
관리 메뉴

채린씨의 티스토리

[Programmers] Level1 - 직사각형 별찍기(JavaScript) 본문

코딩테스트 대비

[Programmers] Level1 - 직사각형 별찍기(JavaScript)

채린씨 2022. 3. 22. 10:48

문제 설명

이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.

 


제한 조건

  • n과 m은 각각 1000 이하인 자연수입니다.

 


예시

입력

5 3

 

출력

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

 


나의 풀이

이중 for문을 사용해서 간단히 풀 수 있다. 세로의 길이가 바깥 for문이 반복되는 횟수, 가로의 길이가 안쪽 for문이 반복되는 횟수!
process.stdin.setEncoding("utf8");
process.stdin.on("data", (data) => {
  const n = data.split(" ");
  const a = Number(n[0]),
    b = Number(n[1]);

  // 정답을 저장할 문자열 answer
  answer = "";

  // 세로 길이만큼 아래의 과정(가로 길이만큼 별 더해주고 줄 바꾸기) 반복
  for (let i = 0; i < b; i++) {
    // 가로 길이만큼 문자열에 별 더해주기
    for (let j = 0; j < a; j++) answer += "*";
    // 가로 길이만큼 별을 다 더해줬으면 줄 바꾸기
    answer += "\n";
  }

  // 정답 출력
  console.log(answer);
});

 


좋았던 다른 사람의 풀이

문자열을 반복하는 repeat 메서드를 사용했다!
process.stdin.setEncoding("utf8");
process.stdin.on("data", (data) => {
  const n = data.split(" ");
  const a = Number(n[0]),
    b = Number(n[1]);
  const row = "*".repeat(a);
  for (let i = 0; i < b; i++) {
    console.log(row);
  }
});

 

Comments