728x90
문제
문제 보러 가기
2675번: 문자열 반복
문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다
www.acmicpc.net
입출력
입력 | 1) | 입력 받는 횟수 |
|
2) | 문자 반복 횟수(num) | 단어 | |
출력 | 단어의 문자를 num만큼 반복한 문자열 |
풀이
n = int(input())
if n<1 or 1000<n:
exit()
arr=[]
for _ in range(n):
num, word = input().split()
num=int(num)
if num<1 or num>8:
exit()
elif len(word)<0 or len(word)>20:
exit()
else:
arr.append([num, word])
for i in range(n):
number = arr[i][0]
string = arr[i][1]
for char in string:
for j in range(number):
print(char, end='')
print()
1) 테스트 케이스 개수를 입력 받는다. (n)
2) n번 만큼 반복횟수(num)와 단어를 입력 받는다. 반복횟수는 int형으로 바꾼다.
3) 이차원 배열에 [반복횟수, 단어]를 추가한다.
4) n번 만큼 문자열을 출력한다.
4.1) 배열중 [i][0]은 반복횟수, 배열[i][1]은 단어이다.
4.2) 단어 한글자씩 반복횟수만큼 출력한다.
위의 코드는 입력의 범위까지 작성한 코드여서 많아 보일 수 있지만. 입력범위 부분을 제거하고 작성시 더 간단하다.
728x90
'CODING TEST > Beakjoon' 카테고리의 다른 글
[백준 / 5622 / python] 다이얼 (0) | 2023.10.16 |
---|---|
[백준 / 10809 / python] 알파벳 찾기 (0) | 2023.10.14 |
[백준 / 10811 / python] 바구니 뒤집기 (0) | 2023.09.23 |
[백준 / 3052 / python] 나머지 (0) | 2023.09.23 |
[백준/15552 / python] 빠른 A+B (0) | 2023.09.05 |