99클럽 코테 스터디 3일차 TIL + 문자열, for _ in range(), char

임정민·2025년 1월 15일
0
post-thumbnail

1. 문제 설명

[문제 내용]

문자열 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를 출력한다.

[입출력 예]


2. 풀이

T = int(input())  # 테스트 케이스 개수 입력 받기

for _ in range(T):  # T번 반복 진행
    R, S = input().split()  # 반복할 횟수(R)와 문자열(S)를 입력 받기
    R = int(R)  # R을 숫자로 바꾼다
    result = ""  # 결과를 저장할 빈 문자열을 준비한다

    for char in S:  # 문자열 S에서 한 글자씩 가져온다
        result += char * R  # 글자를 R번 반복해서 result에 추가한다

    print(result)  # 결과를 출력한다

3. 회고

3-1. 문제 해결 과정

솔직히 어떻게 풀어야 할 지 감이 안 잡혀서 필요한 부분만 하드 코딩했는데 실패했다. 전체적으로 보았을 때 정답의 풀이는 다음과 같다. 1. 입력 받기 - 2. 빈 문자열 생성 - 3. 문자열에서 한 글자씩 반복 후 추가.

처음에는 어렵게 느껴졌는데 막상 보니까 그렇게 어렵지 않았던 거 같다. 아직 알고리즘 관련 지식이 너무 부족한 거 같아 아쉽다.

3-2. 새롭게 배운 내용

  • for _ in range()에서 _의 의미는 변수를 사용하지 않겠다는 뜻이다. 관례적인 변수명이며, 결국 루프를 n번 반복하지만 반복 변수는 사용하지 않겠다는 것을 말한다.

  • input()을 통해 받아온 값은 문자열 형태로 저장된다.

profile
Data Science and Natural Language Processing

0개의 댓글

관련 채용 정보