스터디/알고리즘

[백준 10988] 팰린드롬인지 확인하기

덩이 2022. 5. 11. 13:05
#include <bits/stdc++.h>
using namespace std;
int main(){
    string str, temp;
    cin >> str;

    temp = str;
    reverse(str.begin(), str.end());
    
    if(str==temp)
        cout << 1 << "\n";
    else
        cout << 0 << "\n";
}

엄청 간단한 문젠데 오랜만에 문제를 푸니까 머리가 안돌아감...

처음에는 sort(str.begin(), str.end(), greater<int>()); 라고 역순 정렬하려고 했음 되겠냐?

그리곤 reverse가 있다는걸 생각해서 reverse로 문자열을 역순으로 만들어줌

그리고 또 멍청하게 temp = reverse(str.begin(), str.end());이 당연히 될거라고 생각함... 리턴값이 없는데 되겠냐??

 

애초에 문자열 변수 두개를 선언하고 임시 문자열 변수 (temp)를 str과 같게 만들어주고

temp를 reverse 시켜주고 str과 temp를 비교해주면 된다...