팰린드롬

곽지욱·2023년 9월 6일

BOJ

목록 보기
11/69
post-thumbnail

백준 10988

10988번: 팰린드롬인지 확인하기

  • 문자열을 입력받아 해당 문자열이 회문인지 아닌지를 판별하는 것.
  • 회문이란 앞으로 읽으나 뒤로 읽으나 동일한 문자열을 말함
import java.util.Scanner;

public class palindrome {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        String A = sc.nextLine();
        StringBuilder sb = new StringBuilder(A);

        if(A.equals(sb.reverse().toString())){
            System.out.print(1);
        }
        else {
            System.out.print(0);
        }

    }
}
  1. Scanner 로 사용자로 부터 입력을 받기 위해 객체 sc 를 생성하고 표준입력 에서 데이터를 읽어옴.
  2. 사용자로 부터 입력된 문자열을 sc를 이용하여 읽어옴 입력 된 문자열을 변수 A에 저장
  3. StringBuilder 클래스는 가변적인 문자열을 다루기 위한 클래스로, 문자열을 동적으로 조작하고 변경할 수 있게 해줌
  4. 객체를 생성하고 그 안에 문자열을 저장하고 여기에 여러 연산을 수행할 수 있음
  5. StringBuilder sb = new StringBuilder(A);는 입력 된 문자열 A를 기반으로 StringBuilder 객체 sb를 생성한다는 의미임. 이렇게 하면 sb 객체에는 입력된 문자열 A가 저장 됨

if(A.equals(sb.reverse().toString())){ ... } else { ... }: 입력된 문자열 Asb를 뒤집은 후 문자열로 변환한 것을 비교하여 회문 여부를 판별합니다. 만약 A와 뒤집은 문자열이 같다면, 즉 회문이라면 1을 출력합니다. 그렇지 않다면 0을 출력합니다.

  • sb.reverse(): sb에 저장된 문자열을 뒤집습니다.
  • sb.toString(): 뒤집은 문자열을 다시 문자열로 변환합니다.

0개의 댓글