TIL 통합/Python

INPUT(), MAP(), SPLIT(), 정규표현식(\N)

네디0318 2024. 2. 28. 21:26

카타

 

<38. 직사각형 별찍기>

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

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

예시 입력)

5   3

출력)

*****

*****

*****

 

정답

a, b = map(int, input().strip().split(' '))
print(('*'*a + '\n')*b)

함수/매소드 및 정규표현식 정리

  • split() : 문자열을 따옴표 안의 것을 기준으로 나눔
  • strip() : 문자열 양쪽 공백 제거 함수(굳이 필요 없음)
  • input() : 임의로 입력되는 값을 변수에 저장
  • map(function, iterable) : 반복 가능한 객체(iterable)에 function을 적용하여 반환해주는 함수
  • '\n' : row수

 

해설

  1. 예시된 출력처럼 결과물이 나오려면 우선 주어진 문자열을 공백을 기준으로 나눠서 숫자로 변형해 준 뒤 다른 두 변수(a, b)에 할당하는 것이 필요함. 이를 위해 우선 input으로 문자열을 받아준 뒤, split으로 문자 분리를 해줘야한다. 그 다음 map으로 바꿔준다.
  2. a, b가 할당되고 나면 숫자에 따라 '*'를 곱해주면 끝. 단, row 수를 맞춰주기 위해 '\n'을 입력해준다.