알고리즘

[백준] 1259 - 팰린드롬수

JH_Lucid 2021. 6. 15. 21:45

lf, rf를 각각 맨 처음과 끝을 가리키도록 설정한다.

lf < rf일 경우 양 끝 수를 비교하며, lf++, rf--를 진행한다. 증가 후에 lf >= rf라면 팰린드롬이므로, yes를 출력한다.

0이 입력되면, main return으로 종료한다.

 

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

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        while(true) {

            String str = br.readLine();
            if(str.equals("0")) {
                return;
            }
            int lf = 0;
            int rf = str.length()-1;
            while(lf < rf) {

                if(str.charAt(lf) != str.charAt(rf)) {
                    System.out.println("no");
                    break;
                }
                lf++;
                rf--;
            }
            if(lf >= rf) {
                System.out.println("yes");
            }
        }
    }
}