문제
문자열 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를 출력한다.
정답코드
n = int(input())
for _ in range(n):
cnt, word = input().split()
for x in word:
print(x*int(cnt), end='')
print() # 줄넘김
풀이
- 개수 n을 입력받는다.
- n번 반복할 건데,
- 먼저 두 요소를 받아준다.
- 받은 요소 중 word에서 각 글자에 접근한다. 각 글자는
- 입력받았던 요소 중 반복 횟수 cnt로 한 번씩 곱해져서 출력되고
- for문이 끝나면 줄 바꿈을 한다.
느낀 점
우선 내가 짠 코드는 다음과 같다
N = int(input())
a =[0] * N
for i in range(N):
a[i] = list(map(str, input().split()))
for i in range(N):
for l in a[i][1]:
print(l * int(a[i][0]), end = "")
print()
우선 리스트로 너무 많이 문제를 풀어서 그런지, 접근 방식을 죄다 리스트로 하려고 한다. 넓은 시선의 접근이 필요하다고 생각된다.
'Algorithm > baekjoon' 카테고리의 다른 글
[백준] 1157번 단어 공부 파이썬 (python) (0) | 2024.03.13 |
---|---|
[백준] 10988번 팰린드롬인지 확인하기 파이썬 (python) (0) | 2024.03.12 |
[백준] 10809번 알파벳 찾기 파이썬 (python) (0) | 2024.03.11 |
[백준] 1546번 평균 파이썬 (python) (0) | 2024.03.11 |
[백준] 10811번 바구니 뒤집기 파이썬 (python) (0) | 2024.03.11 |
댓글