본문 바로가기
알고리즘

AOJ - 103 ANA 는 회문이야 [java]

by 발빠진 쥐 2026. 5. 25.

 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String W = sc.next();
        int n = W.length();
        int count = 0;

        // N이 중심인 위치 탐색
        for (int i = 0; i < n; i++) {
            if (W.charAt(i) != 'N') continue;

            // 중심 i에서 양쪽으로 1칸씩 확장
            for (int r = 1; i - r >= 0 && i + r < n; r++) {
                char left  = W.charAt(i - r);
                char right = W.charAt(i + r);

                // 양쪽이 다르면 회문 불가, 즉시 중단
                if (left != right) break;

                // 양쪽이 A이면 조건 만족
                if (left == 'A') count++;

                // 양쪽이 N이면 N이 2개가 되므로 중단
                if (left == 'N') break;
            }
        }

        System.out.println(count);
    }
}

'알고리즘' 카테고리의 다른 글

BufferedReader + StringTokenizer 공식 (암기)  (0) 2026.05.25
AOJ - 104 [java] - DFS, BruteForce  (0) 2026.05.25
코테 전 읽고 가면 좋은 것  (0) 2026.04.24
백준 java - 1978  (0) 2026.04.23
백준 java - 2164  (0) 2026.04.23