본문 바로가기
ONLINE JUDGE/문자열

[백준2675] 문자열 반복

by W_W_Woody 2022. 3. 9.

https://www.acmicpc.net/problem/2675

 

2675번: 문자열 반복

문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다

www.acmicpc.net


테스트 케이스의 개수T를 반복할 때 while 문과 for문을 이용해서 풀어보면 for문이 좀 더 나은 결과를 가져왔다.

 

//T = 케이스반복횟수
//R = 문자반복횟수
//공백
//S 문자열

//그작업을 T번 반복

charAt을 이용한 반복문 -for

package s07_string;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class MJ_04_2675 {
	public static void main(String[] args) throws IOException {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;
		int T = Integer.parseInt(br.readLine()); 
		
		for(int i=0;i<T;i++) {
			st = new StringTokenizer(br.readLine()," ");
			int R = Integer.parseInt(st.nextToken());
			String S = st.nextToken();

			for(int k=0;k<S.length();k++) {
				for(int j=0;j<R;j++) {
					System.out.print(S.charAt(k));
				}
			}
			System.out.println();			
		}
	}
}

charAt을 이용한 반복문 -while

package s07_string;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class MJ_04_2675 {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;
		int T = Integer.parseInt(br.readLine()); 
		int i = 0;
		
		while(i<T) {
			st = new StringTokenizer(br.readLine()," ");
			int R = Integer.parseInt(st.nextToken());
			String S = st.nextToken();

			for(int k=0;k<S.length();k++) {
				for(int j=0;j<R;j++) {
					System.out.print(S.charAt(k));
				}
			}
			i++;
			System.out.println();			
		}
	}
}

'ONLINE JUDGE > 문자열' 카테고리의 다른 글

[백준1152] 단어의 개수  (0) 2022.03.11
[백준1157] 단어 공부  (0) 2022.03.10
[백준10809] 알파벳 찾기  (0) 2022.03.08
[백준11720] 숫자의 합  (0) 2022.03.05
[백준11654] 아스키 코드  (0) 2022.03.04

댓글