티스토리 뷰

알고리즘 관련/BOJ

BOJ)8892 팰린드롬

JASON 자손9319 2017. 3. 13. 03:44

문제: icpc.me/8892


k개의 단어가 주어질 때 두 단어를 조합하여 팰린드롬이 되는 경우 출력하는 문제이다.


string 배열에 모든 단어들을 받아준 뒤 검사해주면 된다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <cstdio>
#include <algorithm>
#include <string>
#include <iostream>
using namespace std;
int t, k, f;
string a[101];
bool isPal(string x) {
    for (int i = 0; i < x.length(); i++) {
        if (x[i] != x[x.length() - - i])
            return 0;
    }
    return 1;
}
int main() {
    scanf("%d"&t);
    while (t--) {
        f = 0;
        scanf("%d"&k);
        for (int i = 0; i < k; i++
            cin >> a[i];
        for (int i = 0; i < k; i++) {
            for (int j = 0; j < k; j++) {
                if (i == j)continue;
                string z = a[i] + a[j];
                if (isPal(z)) {
                    cout << z << "\n";
                    f = 1;
                    break;
                }
            }
            if (f)break;
        }
        if (!f)puts("0");
    }
    return 0;
}
cs


'알고리즘 관련 > BOJ' 카테고리의 다른 글

BOJ)9413 제주도 관광  (0) 2017.03.13
BOJ)2311 왕복 여행  (0) 2017.03.13
BOJ)8892 팰린드롬  (0) 2017.03.13
BOJ)13576 Prefix와 Suffix  (0) 2017.03.13
BOJ)13506 카멜레온 부분 문자열  (0) 2017.03.12
BOJ)1585 경찰  (0) 2017.03.11
TAG
댓글
댓글쓰기 폼