[백준/BOJ] 2675번: 문자열 반복 (Python) 풀이Dev/PS2024. 6. 11. 22:42
Table of Contents

Baekjoon Online Judge (BOJ) 의 2675번 문제인 '문자열 반복' 을 풀어보았다.
[문제 정보]
https://www.acmicpc.net/problem/2675
문제 개요:
문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다.
QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: 이다.
[ 입력 ]
첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 반복 횟수 R(1 ≤ R ≤ 8), 문자열 S가 공백으로 구분되어 주어진다.
S의 길이는 적어도 1이며, 20글자를 넘지 않는다.
[ 출력 ]
각 테스트 케이스에 대해 P를 출력한다.
즉 문자열 S의 각 문자를 R번 반복하여 출력하면 되는 것이다.예시) R이 3, S가 'ABC' 일 경우 → AAABBBCCC (각 문자를 3번씩 반복)R이 5, S가 '/HTP' 일 경우 → /////HHHHHTTTTTPPPPP (각 문자를 5번씩 반복)
알고리즘:
- T(테스트 케이스 수)와 R(문자의 반복 횟수), S(문자열)를 입력받는다.
- 테스트 케이스 수만큼 반복하는 반복문을 만든다.
- 문자열과 각 문자의 반복 횟수를 같이 입력받는다.
- 테스트 케이스 입력 반복문 내부에 현재 입력받은 문자열 길이만큼 반복하는 반복문을 만들고, 각 문자에 R을 곱하여 R번 반복 출력 시켜준다.
- 다음 테스트 케이스를 입력받기 전 줄바꿈을 해준다.
- 위 3, 4, 5번 과정을 남은 테스트 케이스가 없을 때까지 반복한다.
코드:
T = int(input())
for i in range(0, T):
R, S = input().split()
for j in range(0, len(S)):
print(S[j]*int(R), end='')
print('\n', end='')

위 풀이에 대한 질문이나 틀린 정보가 있다면 댓글로 말씀해 주시면 감사하겠습니다!
728x90
'Dev > PS' 카테고리의 다른 글
| [백준/BOJ] 2908번: 상수 (Python) 풀이 (0) | 2024.06.11 |
|---|---|
| [백준/BOJ] 1152번: 단어의 개수 (Python) 풀이 (0) | 2024.06.11 |
| [백준/BOJ] 10809번: 알파벳 찾기 (Python) 풀이, 딕셔너리 사용 (0) | 2024.06.06 |
| [백준/BOJ] 11720번: 숫자의 합 (Python) 풀이 (0) | 2024.06.06 |
| [백준/BOJ] 11654번: 아스키 코드 (Python) 풀이 (2) | 2024.06.06 |
@KangJerry :: 강제리의 개발 이야기
실력있는 개발자가 되고싶은 22학번 대학생입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!