728x90

 

회문 문자열

 

설명

앞에서 읽을 때나 뒤에서 읽을 때나 같은 문자열을 회문 문자열이라고 합니다.

문자열이 입력되면 해당 문자열이 회문 문자열이면 "YES", 회문 문자열이 아니면 “NO"를 출력하는 프로그램을 작성하세요.

단 회문을 검사할 때 대소문자를 구분하지 않습니다.

 

 

 

입력

첫 줄에 길이 100을 넘지 않는 공백이 없는 문자열이 주어집니다.

 

 

출력

첫 번째 줄에 회문 문자열인지의 결과를 YES 또는 NO로 출력합니다.

 

 

예시 입력

gooG

 

 

 

예시 출력

YES

 

 

풀이

1. answer 변수를 "NO" 로 정의한다.

2. StringBuilder를 이용해 입력받은 문자열을 뒤집고 String으로 만든다. StringBuilder 클래스의 reverse(), toString() 을 이용한다.

3. 입력받은 문자열과 뒤집은 문자열을 비교한다. 여기서, 대소문자 구분을 없애고 비교를 하기 위해 String 클래스의 equalsIgnoreCase() 을 이용한다. 두 문자열이 같다면 answer 변수를 "YES" 로 정의한다.

 

 

코드

package solve;
import java.util.Scanner;
public class Main_1_7 {
// 뒤집은 문자열과 원래 문자열 비교하기
public String solution(String str) {
String answer = "NO";
String tmp = new StringBuilder(str).reverse().toString();
if(str.equalsIgnoreCase(tmp)) { // 대소문자 구분 무시
answer = "YES";
}
return answer;
}
public static void main(String[] args) {
Main_1_7 T = new Main_1_7();
Scanner scanner = new Scanner(System.in);
String str = scanner.next();
System.out.println(T.solution(str));
}
}
728x90

'Coding Test Inflearn' 카테고리의 다른 글

[String] 숫자만 추출  (2) 2024.01.29
[String] 유효한 팰린드롬  (0) 2024.01.28
[String] 중복 문자 제거  (0) 2024.01.27
[String] 특정 문자 뒤집기  (0) 2024.01.27
[String] 단어 뒤집기  (0) 2024.01.26