OJ

[BOJ] 8892 팰린드롬 (JAVA)

P3PP4 2023. 5. 26. 10:00

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

 

8892번: 팰린드롬

팰린드롬은 어느 방향으로 읽어도 항상 같은 방법으로 읽을 수 있는 단어이다. 예를 들어, civic, radar, rotor, madam은 팰린드롬이다. 상근이는 단어 k개 적혀있는 공책을 발견했다. 공책의 단어는 ICPC

www.acmicpc.net

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

public class Main {
	
    public static void main(String[] args) throws Exception {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        int T = Integer.parseInt(br.readLine());
tc:		for (int t = 0; t < T; t++) {
            int K = Integer.parseInt(br.readLine());
            String[] word = new String[K];
            for (int k = 0; k < K; k++) {
                word[k] = br.readLine();
            }

            for (int i = 0; i < K; i++) {
                for (int j = 0; j < K; j++) {
                    if (i == j) continue;

                    String newWord = word[i] + word[j];
                    int head = 0;
                    int tail = newWord.length() - 1;

                    while (true) {
                        if (tail <= head) {
                            sb.append(newWord).append("\n");
                            continue tc;
                        } else if (newWord.charAt(head) == newWord.charAt(tail)) {
                            head++;
                            tail--;
                        } else break;
                    }
                }
            }
            sb.append(0).append("\n");
        }

        System.out.print(sb);

    }
	
}