Algorithm/inflearn
단어 뒤집기
마닐라
2021. 9. 3. 17:50
1.StringBuilder의 reverse() 메서드 사용
import java.util.ArrayList;
import java.util.Scanner;
class Main {
public ArrayList<String> solution(int n, String[] str) {
ArrayList<String> answer = new ArrayList<>();
//뒤집기 시작
for(String x : str) {
String tmp = new StringBuilder(x).reverse().toString();
//reverse 메서드를 사용하면 바로 뒤집힘 + String화 시켜야함
answer.add(tmp);
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
String[] str = new String[n];
for(int i = 0; i<n; i++) {
str[i] = kb.next();
}
for(String x : T.solution(n, str)){
System.out.println(x);
}
}
}
2.문자 배열 사용하여 교환
import java.util.ArrayList;
import java.util.Scanner;
class Main {
public ArrayList<String> solution(int n, String[] str) {
ArrayList<String> answer = new ArrayList<>();
for(String x : str){
char[] s = x.toCharArray();
int lt = 0, rt = x.length()-1;
while(lt < rt){
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt--;
}
String tmp = String.valueOf(s); //다시 String화 시키기
answer.add(tmp);
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
String[] str = new String[n];
for(int i = 0; i<n; i++) {
str[i] = kb.next();
}
for(String x : T.solution(n, str)){
System.out.println(x);
}
}
}