문제 내용은 입력으로 들어올 문장을 받은 뒤 출력 양식에 맞춰서 출력해주면 되는데, 포인트는 단어를 뒤집어서 출력해줘야 한다. this is a test를 받으면 test a is this를 출력해야 한다는 얘기다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
// 단어순서 뒤집기 https://www.acmicpc.net/problem/12605
// 입력 받은 횟수만큼 for 돌리면서 단어 넣고 / 뒤집고 / 뒤집은 값 넣어서 출력
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 = 1; i <= count; i++) {
String[] sArr = br.readLine().split(" ");
for (int j = 0; j < sArr.length / 2; j++) {
String temp = sArr[j];
sArr[j] = sArr[sArr.length - 1 - j];
sArr[sArr.length - 1 - j] = temp;
}
StringBuilder s = new StringBuilder();
for (int k = 0; k < sArr.length; k++) {
if (k < sArr.length - 1) {
s.append(sArr[k]).append(" ");
} else {
s.append(sArr[k]);
}
}
System.out.println("Case #" + i + ": " + s);
}
}
}
한번 풀어보자면 일단 들어온 숫자만큼 for 문을 돌려주면서 들어온 String을 Split으로 분리해서 배열에 담아준 후 순서를 뒤집은 다음 ” ” 붙여가며 합친 후 출력시켜주면 되는데 마지막에는 ” “를 넣지 않도록 주의해야 하고, 이후 출력 시에는 Case 양식을 확인해서 1씩 늘리면서 출력시켜주면 끝이다.
Leave a Reply