먼저 추가로 입력받을 케이스의 수 n을 입력 받은 후, n개의 케이스를 각각 입력받아 계산값을 출력하는 문제이다.
각 케이스의 입력값은 "반복할횟수 반복할문자열" 의 모양으로 입력받는다.(두 값은 띄어쓰기로 구분)
풀이는 다음과 같다.
t = input()
cases = list()
for i in range(int(t)):
cases.append(input()) # 입력받은 케이스 수만큼 입력받은 값 리스트 담기
for lst in cases: # 각 케이스에서 반복횟수 / 반복할문자 분리
num = lst.split(' ')[0]
str = lst.split(' ')[1]
result = ''
for item in list(str):
result += item*int(num) # 각 문자열 반복횟수만큼 반복해서 붙이기
print(result)
이 풀이는 모든 케이스를 다 입력받은 후 문자열반복 작업을 시작하고, 마지막에 한번에 모든 값을 출력하는 방식이다.
그리고 다른 분들의 풀이를 참고해서 작성한 다른 풀이이다.
t = input()
for i in range(int(t)):
num, str = input().split(' ') # 반복횟수 / 반복할문자열로 바로 분리해서 저장
result = ''
for item in str:
result += item*int(num)
print(result)
이 방식은 각 케이스를 입력받자마자 바로 반복문자열을 생성하여 출력하고, 다음 케이스를 입력받는 방식이다.
'코딩테스트 연습' 카테고리의 다른 글
[백준] 1157번 - 단어 공부 (PYTHON) (0) | 2022.12.12 |
---|---|
[백준] 10809번 - 알파벳 찾기 (PYTHON) (0) | 2022.12.12 |
[백준] 11720번 - 숫자의 합 (PYTHON) (0) | 2022.12.12 |
[백준] 11655번 - 아스키 코드 (PYTHON) (0) | 2022.12.12 |
[백준] 1065번 - 한수 (PYTHON) (0) | 2022.12.12 |