알고리즘/문자열

[백준알고리즘] 문자열 - 2675번 문자열 반복 문제

Fenderblue 2022. 7. 15. 01:45

첫째줄에 테스트 케이스의 개수가 주어지고, 다음줄부터 테스트 케이스만큼 각 반복할 문자의 횟수와 문자열(또는 문자)를 입력값으로 하여

반복한 문자열을 출력하면 되는 간단한 문제이다. 

 


import java.util.Scanner;

public class stringRepeat {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int repeat;  //각 문자 반복할 횟수
        String str; //반복시킬 문자열
        int testCaseNum = sc.nextInt(); //주어질 테스트 케이스의 수
        int[] rpNums = new int[testCaseNum];
        String[] strs = new String[testCaseNum];    //테스트 케이스 개수만큼의 문자열들이 들어갈 배열

        for (int i = 0; i < testCaseNum; i++) {
            repeat = sc.nextInt();  //각 문자 반복할 횟수
            str = sc.next(); //반복시킬 문자열
            rpNums[i] = repeat;
            strs[i] = str;
        }

        for(int i = 0; i < testCaseNum; i++){   //테스트 케이스의 수만큼
            for (int j = 0; j < strs[i].length(); j++) {    //각 문자열의 길이만큼
                for (int k = 0; k < rpNums[i]; k++) {   //반복할 횟수만큼
                    System.out.print(strs[i].charAt(j));
                }
            }
            System.out.println();   //문자열 하나 출력하고나서 개행해주기 위함
        }
    }
}

삼중for문을 사용하여 풀었다.

 

다른사람들은 어떻게 풀었나 봤더니 BufferedReader로 공백 기준으로 끊어서 받고 (readLine().split(" ");)

숫자는 parseInt로 숫자로 변환해가면서 문제를 풀었더라.

기본적으로 bufferedReader는 입력받는 줄들을 string으로 받기 때문인것 같다.

bufferedReader 언제 공부할래..