[문자열] 8.단어뒤집기
문제
문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오.
단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.
입력
첫째 줄에 테스트 케이스의 개수 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 |
---|---|---|---|
값변경 | 불가능 (변경은 되나 할당된 메모리의 값이 수정되는 것이 아니라 새로운 메모리에 추가 되는 것) | 가능 | 가능 |
메모리사용 | 값이 자주 변경되면 메모리 낭비가 심함 | 값 변경에도 메모리 낭비가 없음 | 값 변경에도 메모리 낭비가 없음 |
스레드 | 멀티스레드 안전 | 멀티스레드 안전 | 멀티스레드 불안전 |
동기화 | 가능 | 가능 | 불가능 |
속도 | 빠름 | 느림 | 빠름 |
결론 | 문자열 연산이 적을때 사용 | 멀티스레드환경에서 문자열 연산이 많을때 사용 | 단일스레드나 동기화가 필요하지 않은 환경에서 문자열 연산이 많을때 사용 |
댓글남기기