https://www.acmicpc.net/problem/12904
12904번: A와 B
수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수
www.acmicpc.net
보자마자 거꾸로 가면 된다는 거는 알았는데 치명적인 예외가 있었다. t 가 s 보다 짧은 예외도 들어올 수 있다;;;;;
그 예외를 처리해주니 맞았다!
코드를 보면 심플하니 바로 이해가 될 것이다.
#include <iostream>
#include <algorithm>
using namespace std;
int main(void) {
ios::sync_with_stdio(0);
cin.tie(0);
string s, t;
cin >> s >> t;
for (int i = t.length()-1; i >= 0; i--) {
if (t.length() <= s.length()) {
if (t == s) {
cout << 1;
return 0;
}
else {
cout << 0;
return 0;
}
}
if (t[i] == 'B') {
t = t.substr(0, i);
reverse(t.begin(), t.end());
}
else t = t.substr(0, i);
}
}
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준 11049 - Java] 행렬 곱셈 순서 (0) | 2022.02.24 |
---|---|
[백준 11048 - Java] 이동하기 (1) | 2022.02.22 |
[백준 23599 - C++] 밥 (0) | 2022.02.16 |
[백준 1107 - c++] 리모컨 (0) | 2022.02.06 |
[백준 12107 - c++] 약수 지우기 게임 1 (1) | 2022.02.06 |