본문 바로가기
코딩테스트 준비/백준

[백준] 1259번 - 팰린드롬수 [Java]

by mwzz6 2025. 1. 6.

https://www.acmicpc.net/problem/1259

 

[백준] 1259번 - 팰린드롬수 [Java]


1.  아이디어

 

for문을 활용해서 팰린드롬 여부를 판단할 수 있다.


2. 문제풀이

 

주어진 입력을 배열로 바꾼 후 배열의 양끝부터 중간까지 각 원소가 같은지 계속 비교하는 방식으로 구현했다.

한번이라도 다르면 false를 반환하고 전부 통과하면 true를 반환하게 구현했다.


3. 코드

 

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        StringBuilder sb = new StringBuilder();

        while (true) {
            char[] input = br.readLine().toCharArray();
            if (input[0] == '0') break;

            boolean flag = palindrome(input);

            if (flag) sb.append("yes\n");
            else sb.append("no\n");
        }

        bw.write(sb.toString());
        bw.flush();
    }

    private static boolean palindrome(char[] arr) {
        for (int i = 0; i < arr.length / 2; i++) {
            if (arr[i] != arr[arr.length - 1 - i]) return false;
        }

        return true;
    }

}

4. 후기