문제 풀이 및 개발 공간

[백준] 13417번 카드 문자열 문제! (silver 4 본문

백준공부/java

[백준] 13417번 카드 문자열 문제! (silver 4

gomduri43 2022. 8. 30. 22:42

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main{
	public static void main(String[] args) throws IOException {
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
		StringBuilder sb=new StringBuilder();
		StringTokenizer st;
		String word;
		int t=Integer.parseInt(br.readLine());
		for(int i=0; i<t; i++) {
			int n=Integer.parseInt(br.readLine());
			st=new StringTokenizer(br.readLine());
			sb.append(st.nextToken());
			for(int j=1; j<n; j++) {
				word=st.nextToken();
				if(sb.charAt(0)<word.charAt(0)) {
					sb.append(word);
				}
				else {
					sb.insert(0, word);
				}
			}
			bw.write(sb+"\n");
			sb.setLength(0);
		}
		bw.flush();
		bw.close();
	}
}

//string.concat을 이용할때와 sb.append, stringbuilder를 사용할때 시간차가 거의 두배
//가급적 stringbuilder이용하기.