문제 내용은 입력받은 문자열을 뒤집되, 전체 문자열을 한 번에 뒤집는 것이 아니라 단어별로 쪼개서 뒤집은 뒤 그 결과를 반환해야 한다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int count = Integer.parseInt(br.readLine());
for (int i = 0; i < count; i++) {
String[] split = br.readLine().split(" ");
StringBuilder sb = new StringBuilder();
for (int j = 0; j < split.length; j++) {
StringBuilder reverseSb = new StringBuilder();
reverseSb.append(split[j]).reverse();
sb.append(reverseSb + " ");
}
System.out.println(sb.toString().substring(0, sb.length() - 1));
}
}
}
일단 문자열을 공백 기준으로 쪼개준 뒤 해당 내용으로 for 문을 돌리면서 StringBuilder의 reverse() 메소드를 사용해서 뒤집어준 결과를 다른 StringBuilder에 붙여주면 문자열을 단어 단위로 쪼개서 뒤집은 결과를 얻게 되는데 마지막에 공백만 제거해준 후 반환해주면 해결이다
Leave a Reply