문제 요구사항
이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.
제한 조건
n과 m은 각각 1000 이하인 자연수입니다.
풀이
import java.util.Scanner;
class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
for(int i = 0; i< b; i++){
for(int j = 0; j < a; j++){
System.out.print('*');
}
System.out.println();
}
}
}
실패 요인
정답 확인 전
근데 왜 가로줄(j = 1; j < a; j++)은 1부터 시작해야 하는거지? 이해가 안 간다.
정답 확인 후
아 다시보니까 줄바꿈이 아니라 별을 한 번 더 찍었다.
잘한 점
중첩 반복문을 잘 활용했다.
예상보다 가로줄이 1줄 더 길게 나왔을 때 반복문을 변형하여 잘 대처하였다(최초 정답)
인사이트
출력이 이상한데 순회자도 이상하지 않다면 출력 명령을 다시 보도록 하자.
Github 링크
https://github.com/ginsengcandy/Coding-Test-Practice/commit/2f1fd4abaa65d25eaf076dabb368f22e41793d8e
[level 1] Title: 직사각형 별찍기, Time: 273.90 ms, Memory: 101 MB -BaekjoonHub · ginsengcandy/Coding-Test-Practice@2f1fd
+ 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.</p>
github.com
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/12969
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
'Algorithm' 카테고리의 다른 글
| [알고리즘] 크기가 작은 부분 문자열 (0) | 2026.02.20 |
|---|---|
| [알고리즘] 이상한 문자 만들기 - 향상된 for문의 함정과 String 성능 이슈 (0) | 2026.02.13 |
| [알고리즘] 최대공약수와 최소공배수 구하기 (0) | 2026.02.04 |
| [알고리즘] 행렬의 덧셈 (0) | 2026.02.03 |
| [알고리즘] 문자열 다루기 기본 - 문자열의 길이와 구성 검증하기 (0) | 2026.02.02 |