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 |