728x90

◯문제 링크

 

[백준,2675]문자열반복

 

◯코드 미리보기

Test_case = int(input())

for i in range(Test_case):
    S, P = input().split( )
    S = int(S)
    for k in range(len(P)):
        for z in range(S):
            print(P[k],end="")
    print("")

 

설명

Test_case = int(input())

for i in range(Test_case):

먼저 문제의 반복을 위해서 반복 시킬 만큼의 test case를 입력받는다. 이렇게 입력받은 값은 for문으로 반복시킨다. 

 

그럼 for문의 안을 살펴보자.

    S, P = input().split( )
    S = int(S)

일단 문제에서 주어진 변수를 한 줄로 입력받기 위해서  split을 사용했다.

다만 S부분은 숫자이기 때문에 나중에 정수형을 변환해준다.

 

    for k in range(len(P)):
        for z in range(S):
            print(P[k],end="")

다음은 P의 길이만큼 for문을 돌린다. 이것은 문자열 인덱싱을 사용하기 위해서이다.

for문 안에 for문은 문자를 반복 출력하기 위한 for문이다. 범위는 당연히 S로 지정한다.

마지막줄은 문자를 출력해주는 print문이다. 끝부분에 end의 값을 여백이 없는 것으로 바꾸었는데, 이는 문제에서 원하는 출력을 해주기 위함이다.

 

    print("")

모든 코드가 작동하고 나서 케이스 구분을 해주기 위해서 줄바꿈을 위해 빈 print문을 하나 출력해준다.

 

배운 것

⩥print함수의 변형(end)

 

728x90

'python > 문제' 카테고리의 다른 글

[백준/2231]분해합  (0) 2021.10.28
[백준,10809]알파벳 찾기  (0) 2021.03.04
[백준, 11654] 아스키코드  (0) 2021.03.04
[백준,1011]Fly me to the Alpha Centauri  (0) 2021.02.23
[백준,1065]/한수  (0) 2021.02.22

+ Recent posts