## Java 풀이 시 유의사항 ##
클래스명은 Main 으로 작성해야함!
// 풀이 1
import java.util.Scanner;
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.nextLine();
String p = "";
for (char c: s.toCharArray()) {
for (int j = 0; j < r; j++) {
p += c;
}
}
System.out.println(p.trim());
}
sc.close();
}
}
// 풀이 2
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
String[] str = br.readLine().split(" ");
int R = Integer.parseInt(str[0]);
for (byte val : str[1].getBytes()) {
for (int j = 0; j < R; j++) {
sb.append((char)val);
}
}
sb.append('\n');
}
System.out.print(sb);
}
}
단순히 문자열을 입력받고, 반복 횟수만큼 각 문자를 반복해서 결과 문자열에 추가를 해준 뒤, 출력을 해주면 되는 문제
그다지 어렵지는 않은 문제이나, 이번에도 풀이 1
과 풀이 2
의 결과를 비교하면 풀이 2
의 코드가 훨씬 더 좋은 코드임을 알 수 있음
약 2배의 시간차이를 보임