[JAVA] 4. 단어 뒤집기
2021. 4. 14. 00:58
728x90
설명
N개의 단어가 주어지면 각 단어를 뒤집어 출력하는 프로그램을 작성하세요.
입력
첫 줄에 자연수 N(3<=N<=20)이 주어집니다.
두 번째 줄부터 N개의 단어가 각 줄에 하나씩 주어집니다. 단어는 영어 알파벳으로만 구성되어 있습니다.
출력
N개의 단어를 입력된 순서대로 한 줄에 하나씩 뒤집어서 출력합니다.
예시 입력 1
3 good Time Big
예시 출력 1
doog emiT giB
풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
int input = in.nextInt();
//입력받을 문자열을 담을 배열
String[] arr = new String[input];
// 답 배열
String[] answer = new String[input];
// 문자열을 입력받아 저장
for(int i=0; i<input; i++) {
arr[i] = in.next();
}
for(int i=0; i<arr.length; i++) {
String s = "";
// 문자열을 뒤에서부터 한글자씩 s에 저장
for(int j=arr[i].length()-1 j>=0; j--){
s += arr[i].charAt(j);
}
answer[i] = s;
}
for(String a : answer) {
System.out.println(a);
}
}
}
다른 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
int input = in.nextInt();
//입력받을 문자열을 담을 배열
String[] arr = new String[input];
// 답 리스트
List<String> answer = new ArrayList<>();
// 문자열을 입력받아 저장
for(int i=0; i<input; i++) {
arr[i] = in.next();
}
for(String s : arr) {
// 스트링빌더객체로 변환후 문자열을 뒤집고, 다시 스트링객체로
String tmp = new StringBuilder(s).reverse().toString();
answer.add(tmp);
}
for(String a : answer) {
System.out.println(a);
}
}
}
다른 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
int input = in.nextInt();
//입력받을 문자열을 담을 배열
String[] arr = new String[input];
// 답 리스트
List<String> answer = new ArrayList<>();
// 문자열을 입력받아 저장
for(int i=0; i<input; i++) {
arr[i] = in.next();
}
for(String x : arr) {
// 문자열을 문자배열로 변환
char[] s = x.toCharArray();
// lt 왼쪽 첫번째 인덱스, rt 오른쪽 마지막 인덱스
int lt=0, rt=x.length()-1;
// 양쪽 끝값의 자리를 교환
while(lt<rt){
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt++;
}
// char배열을 스트링으로 String.valueOf();
String tmp = String.valueOf(s);
answer.add(tmp);
}
for(String a : answer) {
System.out.println(a);
}
}
}
728x90
'알고리즘 > JAVA' 카테고리의 다른 글
[JAVA] 6. 중복문자 제거 (0) | 2021.04.14 |
---|---|
[JAVA] 5. 특정 문자 뒤집기 (0) | 2021.04.14 |
[JAVA] 3. 문장 속 가장 긴 단어 찾기 (0) | 2021.04.14 |
[JAVA] 2. 대소문자 변환 (1) | 2021.04.14 |
[JAVA] 1. 단어뒤집기 (0) | 2021.04.14 |