백준 12904 A와 B (C++)

안유태·2022년 7월 6일
0

알고리즘

목록 보기
3/239

12904번: A와 B
문제에서 ST로 바꾸는 두 가지의 조건을 알려준다.

  • 문자열의 뒤에 A를 추가한다.
  • 문자열을 뒤집고 뒤에 B를 추가한다

이를 역순으로 T의 뒷 문자를 제거해가며 S로 바꾸는 방식으로 답을 찾았다.
이번 문제는 그리디 치고는 생각보다 간단한 문제였다.



#include <iostream>
#include <algorithm>
#include <string>

using namespace std;

string S, T;
int res = 0;

void findRes() {
    while (S.size() != T.size()) {
        if (T.back() == 'A') {
            T.pop_back();
        }
        else {
            T.pop_back();
            reverse(T.begin(), T.end());
        }
    }

    if (S == T) res = 1;
}

void solution() {
    findRes();

    cout << res;
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);

    cin >> S;
    cin >> T;

    solution();

    return 0;
}
profile
공부하는 개발자

0개의 댓글