Coding Test/Programmers

[Lv.1] 직사각형 별찍기 [프로그래머스_코딩테스트] [구현, 출력] [10분]

whawoo 2025. 6. 18. 14:06
반응형

🔍 문제 요약

https://school.programmers.co.kr/learn/courses/30/lessons/12969

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

입력으로 가로, 세로의 길이 (n, m)을 주어지고 그 사이즈만큼의 직사각형 모양의 *을 찍는 문제

🧠 나의 접근 방식과 시행착오

한 2,3분 걸렸나 싶은 그냥 푼 문제. 크게 뭐 없다.

using System;

public class Example
{
    public static void Main()
    {
        String[] s;

        Console.Clear();
        s = Console.ReadLine().Split(' ');

        int a = Int32.Parse(s[0]);
        int b = Int32.Parse(s[1]);

        for (int i = 0; i < b; i++)
        {
            for (int j = 0; j < a; j++)
            {
                Console.Write("*");
            }
            Console.WriteLine();
        }
    }
}

✅ 풀이 코드

피드백으로 준 것들이 조금 도움이 될만한 듯 해서 캡쳐를 해두었다. Console.Write를 반복을 돌면서 계속 찍는 대신에 new string('*', a)와 같이 a개의 *을 생성하는 방법도 있다는 점. 추가로 그렇게 미리 생성해둔 string은 동일하게 반복되기에 for문을 한 번만 돌릴 수 있다. 추가로 처음에 문제에 포함되어 있어서 넣어둔 거긴 했는데 Console.Clear()는 있으나 없으나 상관 없다는 듯 함

문제 풀이 피드백

🔄 정리

string에 동일한 단어가 n번 반복이 된다면 한번에 new string('*', n)과 같은 방법을 알아두면 편리할 것

반응형