https://www.acmicpc.net/problem/9093
9093번: 단어 뒤집기
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는
www.acmicpc.net
해석 및 팁
이 문제는 문장을 전부 뒤집는것이 아닌 단어별로 뒤집는것이 핵심입니다. 따라서 먼저 StringBuilder의 reverse함수를 통해 뒤집어 준 후 split을통해 공백을 기준으로 잘라서 배열에 저장합니다. 그 후 저장된 단어들을 뒤집어서 출력해주면 됩니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = Integer.parseInt(sc.nextLine());
for(int i = 0; i < n; i++) {
String arr = sc.nextLine();
StringBuilder sb = new StringBuilder(arr);
String str = sb.reverse().toString(); //입력받은 문장 뒤집기
String[] sen = str.split(" "); //공백을 기준으로 나누기
for(int j = sen.length - 1; j >=0; j--) {
System.out.print(sen[j]+" "); //나누어진 단어를 뒤집어서 출력
}
}
}
}
'백준' 카테고리의 다른 글
백준 10798 세로읽기(Java) (0) | 2023.01.15 |
---|---|
백준 11655 ROT13(Java) (1) | 2023.01.15 |
백준 1292 쉽게 푸는 문제(Java) (0) | 2023.01.15 |
백준 1032 명령 프롬프트(Java) (1) | 2023.01.15 |
백준 1259 팰린드롬수(Java) (0) | 2023.01.14 |