BOJ_10988_팰린드롬인지 확인하기

Swimming_Ram·2025년 7월 13일
0

Javalgorithm

목록 보기
4/7
post-thumbnail

단순히 앞에서 읽던 뒤에서 읽던 같은 단어가 완성되면 팰린드롬이라고 하는데 그 여부를 판단하는 문제

파이썬이라면 Reverse로 딸각 해결이 되지만 자바로는 역시가 처음보는 기술들이 많이 보인다.

package 문자열;

import java.io.*;
import java.lang.*;

public class BOJ_10988_팰린드롬인지확인하기  {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String words = br.readLine();
        //String [] word_list (x) = br.readLine(" "); 같은 형식이어야 함

        StringBuffer words_2 = new StringBuffer(words);
        String reverse_words = words_2.reverse().toString();

        if (words.equals(reverse_words)) {
            System.out.println("1");
        } else {
            System.out.println("0");
        }
    }
}
  1. import java.lang.* 리버스 함수를 이용하려면 꼭 필요한 부분
  2. StringBuffer : 이 글을 작성한 후 따로 공부해서 올리겠지만 리버스하기 위해서 넣어줘야 하는 과정인것 같다.
  3. words.equals(reverse_words) 부분에서 처음에는
if (words_2.equals(reverse_words)) {

이렇게 작성했었다. 오류가 발생하였는데,이유는
words_2 는 StringBuffer 객체이고
reverse_words는 String 객체이기 때문이다.

equals()함수는 객체 타입까지 비교하기때문에 이 경우에는 팰린드롬이여도 무조건 false가 출력이 되기때문에 주의해야 한다.

profile
Swimming is good at loss Weight

0개의 댓글