본문 바로가기
Online-Judge/Programmers

[Programmers] Python 직사각형 별찍기

by nyangzzi 2022. 1. 3.
반응형

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

 

코딩테스트 연습 - 직사각형 별찍기

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

programmers.co.kr


 

1. n과 m을 int형으로 선언한 후 input으로 입력 받는다.

이때, n과 m이 한 번에 인풋 값으로 들어오므로 split(' ')을 사용하여 공백을 기준으로 잘라넣는다.

n, m = input().split(' ')
n = int(n)
m = int(m)

 

map을 사용하여 한 번에 입력받는 것도 가능하다.

n, m = map(int, input().strip().split(' '))

 

 

2. 이중 for문으로 별을 찍을 때, 바깥쪽 for문이 세로를 의미하고 안쪽 for문이 가로를 의미한다.

가로의 길이가 n, 세로의 길이가 m이므로 바깥쪽 for문에 m까지, 안쪽 for문은 n까지 반복한다.

for i in range(m):
    for j in range(n):
        print('*', end='')
    print()

print 함수는 자동으로 줄바꿈을 해주므로, end=''를 통해 줄바꿈을 하지 않도록 설정한다.

이후 한 줄 출력이 모두 끝나면 print()를 통해 줄바꿈을 한다.

 

 


전체코드

n, m = map(int, input().strip().split(' '))

for i in range(m):
    for j in range(n):
        print('*', end='')
    print()
반응형

댓글