문제

문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오.
단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다.
단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 공백이 하나 있다.

출력

각 테스트 케이스에 대해서, 입력으로 주어진 문장의 단어를 모두 뒤집어 출력한다.

예제

입 력 출 력
I am happy today I ma yppah yadot
We want to win the first prize eW tnaw ot niw eht tsrif ezirp

문제원본

https://www.acmicpc.net/problem/9093

소스보기

소스로딩 실패

실행결과

그림

String, StringBuffer, StringBuilder 차이점

구분 String StringBuffer StringBuilder
값변경 불가능 (변경은 되나 할당된 메모리의 값이 수정되는 것이 아니라 새로운 메모리에 추가 되는 것) 가능 가능
메모리사용 값이 자주 변경되면 메모리 낭비가 심함 값 변경에도 메모리 낭비가 없음 값 변경에도 메모리 낭비가 없음
스레드 멀티스레드 안전 멀티스레드 안전 멀티스레드 불안전
동기화 가능 가능 불가능
속도 빠름 느림 빠름
결론 문자열 연산이 적을때 사용 멀티스레드환경에서 문자열 연산이 많을때 사용 단일스레드나 동기화가 필요하지 않은 환경에서 문자열 연산이 많을때 사용

업데이트:

댓글남기기