728x90
🗂️ 문제
📌 Point
문자열(String)
문자열 순회
- 문자열은 문자의 배열(sequence of characters)이며, 리스트나 튜플처럼 이터러블(iterable) 객체다.
S = "ABC"
for s in S:
print(s)
# Result
A
B
C
- for s in S는 S의 각 문자를 순차적으로 꺼내어 s에 할당한다.
- 따라서, A, B, C를 순서대로 출력한다.
📄 코드
def main():
for _ in range(int(input())):
R, S = input().split()
print(''.join(s * int(R) for s in S))
if __name__ == "__main__":
main()
✍🏻 풀이
시간 복잡도 : O(T X L X R)
T: 테스트 케이스 수, L: 각 테스트 케이스에서 문자열 S의 길이, R: 반복 횟수
- 반복할 테스트 케이스 수 가져오기
- 반복 횟수와 문자열 입력 받기
- 각 테스트 케이스에서 R과 S를 공백 기준으로 분리하여 받는다.
- input().split()으로 문자열을 공백 기준으로 분리해 리스트로 반환한다.
- 주의. R을 정수로 쓰기 위해서는 int(R)로 변환해야 한다.
- 문자 반복 및 출력
- 각 문자를 R번 반복하여 새로운 문자열을 만들어 출력한다.
- 리스트 컴프리핸션으로 S의 각 문자 s를 R번 반복한다.
- ''.join(...)을 사용해서 반복된 문자들을 하나의 문자열로 결합한다.
- 각 문자를 R번 반복하여 새로운 문자열을 만들어 출력한다.
728x90
'coding_test' 카테고리의 다른 글
[백준] 17609. 회문 (파이썬) (0) | 2025.03.25 |
---|---|
[백준] 11945. 뜨거운 붕어빵 (파이썬) (0) | 2025.03.08 |
[프로그래머스] 가사 검색 (파이썬) (0) | 2025.03.05 |
[백준] 11719. 그대로 출력하기 (파이썬) (0) | 2025.03.04 |
[백준] 11657. 타임머신 (파이썬) (0) | 2025.02.27 |