문제
영어 알파벳과 특수문자로 구성된 문자열이 주어지면 영어 알파벳만 뒤집고, 특수문자는 자기자리에 그대로 있는 문자열을 만들어 출력하는 프로그램을 작성하세요.
▣ 입력설명
첫 줄에 길이가 100을 넘지 않는 문자열이 주어집니다.
▣ 출력설명
첫 줄에 알파벳만 뒤집힌 문자열을 출력합니다.
▣ 입력예제 1
a#b!GE*T@S
▣ 출력예제 1
S#T!EG*b@a
풀이
의 응용버전.
Character.isAlphabetic 함수 사용해서 풀면 된다.
코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
char[] c = in.next().toCharArray();
int lt=0, rt= c.length-1;
while(lt < rt) {
if(Character.isAlphabetic(c[lt]) && Character.isAlphabetic(c[rt])) {
char tmp = c[lt];
c[lt] = c[rt];
c[rt] = tmp;
}
lt++;
rt--;
}
System.out.println(String.valueOf(c));
}
}
'PS(Java) > 인프런 강의 문제' 카테고리의 다른 글
[PS] 인프런 강의 - 문자열 7. 회문 문자열 (0) | 2022.10.11 |
---|---|
[PS] 인프런 강의 - 문자열 6. 중복 문자 제거 (0) | 2022.10.10 |
[PS] 인프런 강의 - 문자열 4. 단어 뒤집기 (0) | 2022.10.10 |
[PS] 인프런 강의 - 문자열 3. 문장 속 단어(indexOf(), substring()) (0) | 2022.10.10 |
[PS] 인프런 강의 - 문자열 2. 대소문자 변환 (0) | 2022.10.10 |