💎 백준/🎇 C언어

[C언어] 백준 2675번 문자열 반복

mildliner 2024. 2. 2. 22:08

문자열 반복

문제

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

예제 입력 1
2
3 ABC
5 /HTP

 

예제 출력 1
AAABBBCCC
/////HHHHHTTTTTPPPPP
제출 코드
#include <stdio.h>
#include <string.h> // 문자열 처리를 위한 헤더 파일

int main() {
    char s[20]; // 반복될 문자열을 저장할 배열
    int t, r; // t: 테스트 케이스의 수, r: 각 문자를 반복할 횟수

    scanf("%d", &t); // 사용자로부터 테스트 케이스의 수를 입력받음

    for (int i = 0; i < t; i++) { // 각 테스트 케이스에 대하여 반복
        scanf("%d %s", &r, s); // 문자를 반복할 횟수와 문자열을 입력받음
        int len = strlen(s); // 입력받은 문자열의 길이를 계산

        for (int j = 0; j < len; j++) { // 문자열의 각 문자에 대하여 반복
            for (int k = 0; k < r; k++) // 각 문자를 r번 반복하여 출력
                printf("%c", s[j]);
        }
        printf("\n"); // 한 테스트 케이스의 처리가 끝나면 줄바꿈 문자 출력
    }
    return 0; // 프로그램 정상 종료
}