Algorithm/구현

[백준 python] 2675번 문자열 반복 파이썬

양원준 2024. 3. 27. 20:47
728x90

문제

 

 

문자열 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글자를 넘지 않는다. 

 

 

 

 

입력 예시

 

2
3 ABC
5 /HTP

 

 

 

출력 예시

 

AAABBBCCC
/////HHHHHTTTTTPPPPP

 

 

 

 

 

나의 답

 

t= int(input())

for _ in range(t):
    r, s = input().split()
    for i in s:
        print(i*int(r), end='')
    print()

 

 

input으로 입력을 받고 상황에 맞게 연산을 진행하였다

 

처음에는 아예 예시와 똑같이 쓰고 똑같이 출력이 나와야되는지 알고 아래와 같이 해보았는데 다른 사람들의 풀이를 보니 백준은 프로그래머스와 약간 다른듯?하다 뭐 좀 익숙해져야겠다 일단!

 

t = input()
r_arr = []
s_arr = []

#처음에 t 수만큼 문자열 배열 s_arr와 숫자 저장 배열 r_arr에 저장
for i in range(int(t)):
    r, s = input().split()
    r_arr.append(r)
    s_arr.append(s)

#배열을 순회하며 s_arr의 length만큼 돔
for i in range(len(s_arr)):
    result = ''
    #s_arr의 요소별 length만큼 순회하며 이에 맞는 r_arr 요소와 곱하여 출력
    for j in range(len(s_arr[i])):
        result += s_arr[i][j]*int(r_arr[i])
    print(result)

 

 

 

 

 

 

728x90

'Algorithm > 구현' 카테고리의 다른 글

[백준 python] 1713번 후보 추천하기  (0) 2024.04.15