본문 바로가기
Problem Solving/Baekjoon

[백준] 1254 팰린드롬 만들기 - Brute Force / Java

by graycode 2023. 5. 26.

 문제 링크

 

1254번: 팰린드롬 만들기

동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는

www.acmicpc.net

 

 풀이 과정

 

 풀이 코드

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

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));

        String s = br.readLine();

        int len = s.length();
        for (int i = 0; i < s.length(); i++, len++) {
            if (isPalindrome(s.substring(i)))
                break;
        }

        bw.write(String.valueOf(len));
        bw.flush();
    }

    private static boolean isPalindrome(String s) {
        int half = s.length() / 2;

        for (int i = 0; i < half; i++) {
            if (s.charAt(i) != s.charAt(s.length() - i - 1))
                return false;
        }

        return true;
    }

}

댓글