백준 단계별

[Java] 백준 2675: 문자열 반복

pullwall 2023. 1. 17. 14:01
728x90
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int T = sc.nextInt();
		
		for(int i=0;i<T;i++) {
			int R = sc.nextInt();
			String S = sc.next();
			String[] strArray = S.split("");
			
			for(int k=0;k<strArray.length;k++) {
				for(int j=0;j<R;j++) {
					System.out.print(strArray[k]);
				}
			}
			System.out.println();
		}
	}
}

입력받은 문자열을 어떻게 한 글자씩 나누는지가 관건인 문제이다.

 

첫번째 방법으로 본인이 사용한 split메소드를 이용하는 방법,

두번째 방법으로 charAt메소드를 이용하는 방법이 있겠으나

 

위 문제에서는 몇글자가 주어질 지 모르기 때문에 인덱스로 접근하는데는 지장이 있다.

 

따라서 본인은 split을 사용하여 문제를 해결하였다.

 

 

테스트 케이스 T를 입력받고 T번만큼 반복시켜준다.

 

그 반복문 안에 R과 S를 입력받고 split으로 쪼개는 기능을 구현하고

 

0부터 split 의 결과를 저장한 배열인 strArray의 크기만큼 반복시키며

ex. 0번째 숫자를 3번 반복

      1번째 숫자를 3번 반복

      2번째 숫자를 3번 반복에서 ~번째를 담당하는 반복문

 

내부에 ~번 반복 을 담당하는 반복문을 넣어주면 알고리즘 완성.

728x90
댓글수0