ezhoon

[인프런] 01-05 특정 문자 뒤집기 본문

[Java] 인프런 문제풀이/Stirng(문자열)

[인프런] 01-05 특정 문자 뒤집기

ezhoon 2022. 1. 16. 21:13

문제


  • 영어 알파벳과 특수문자들이 섞여서 입력 된다.
  • 특수문자는 자기 자리에 그대로 있으며 영어 알파벳끼리는 서로 위치를 바꿔준다.

예시 출력

 

⚠️ 주의사항


  • 한쪽이라도 알파벳이 아닐경우 어떻게 할지 생각하기

 

문제풀이


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Java01_05 {

    public String solution(String str){
        String answer;
        char[] s=str.toCharArray();
        int lt=0, 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) throws IOException {
        Java01_05 T = new Java01_05();

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str = br.readLine();

        System.out.println(T.solution(str));
    }
}
Comments