자라는 개발자/문제풀이

백준 C++ 1213번 팰린드롬만들기

자란다 2021. 12. 8. 21:16
728x90
반응형

1213번 팰린드롬 만들기



문제풀이

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int alpha[97];
string hol, zzac;
int main()
{
    string s;
    cin >> s;
    for (char i : s)
    {
        alpha[i]++;
    }
    for (char i = 'A'; i <= 'Z'; i++)
    {
        if (alpha[i] % 2)
        {
            hol += i;
        }
        for (int j = 0; j < alpha[i] / 2; j++)
        {
            zzac += i;
        }
    }
    if (hol.size() > 1)
    {
        printf("I'm Sorry Hansoo");
    }
    else
    {
        cout << zzac;
        cout << hol;
        reverse(zzac.begin(), zzac.end());
        cout << zzac;
    }
}

string , char에 대한 이해도가 낮아서 적절한 활용법을 잘 몰랐다. 그 결과, 기존에 하려던 복잡한 방식이 필요없이 간단하게 구현이 되었다. 천재들이 정말 많다.

728x90
반응형

'자라는 개발자 > 문제풀이' 카테고리의 다른 글

백준 C++ 10773번 제로  (1) 2021.12.11
백준 C++ 11866번 요세푸스 문제 0  (1) 2021.12.10
백준 c++ 10845번 큐  (1) 2021.12.07
백준 C++ 2164번 카드2  (0) 2021.12.06
백준 C 1259번 팰린드롬수  (1) 2021.12.03