import java.util.*;
class Main {
public String solution(String str) {
String answer = "";
// char 배열에 str 담기
char[] s = str.toCharArray();
// 시작, 마지막 위치 설정
int lt = 0;
int rt = str.length()-1;
while(lt < rt) {
// 시작이 알파벳이 아니라면 우측 1칸 이동
if(!Character.isAlphabetic(s[lt])) {
lt++;
// 마지막이 알파벳이 아니라면 좌측 1칸 이동
} else if(!Character.isAlphabetic(s[rt])) {
rt--;
} else {
// 알파벳이면 좌측, 우측 위치 바꾸기
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt--;
}
// char 배열 string으로 변환
answer = String.valueOf(s);
}
return answer;
}
public static void main(String []args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.next();
System.out.println(T.solution(str));
}
}
import java.util.*;
class Main {
public String solution(String str) {
String answer = "";
char[] s = str.toCharArray();
int lt = 0;
int rt = str.length()-1;
while(lt < rt) {
if(!Character.isAlphabetic(s[lt])) {
lt++;
} else if(!Character.isAlphabetic(s[rt])) {
rt--;
} else {
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt--;
}
answer = String.valueOf(s);
}
return answer;
}
public static void main(String []args) {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.next();
System.out.println(T.solution(str));
}
}
'코딩테스트 > 기초' 카테고리의 다른 글
7. 회문 문자열 (0) | 2024.12.02 |
---|---|
6. 중복문자제거 (0) | 2024.12.02 |
4. 단어 뒤집기 (0) | 2024.12.01 |
3. 문장 속 단어 (0) | 2024.11.30 |
2. 대소문자 변환 (1) | 2024.11.28 |