[BOJ/Python]12904 AとB


は、最初に作成可能および作成不可の文字列分類ルックアップルールを試みた.しかし、種類が多すぎて、特別なルールを見つけるのも難しい.このとき,文字列中の文字を1つずつ削除する演算により問題を解決する逆求の方法を考えた.
  • 文字列sを入力します.
  • 文字列tを入力します.
  • の出力値を格納する変数の答えを1として定義する.
  • ドアを回すと、
  • tの長さがsの長さよりも長く、繰り返し現れる.
    ->tの最後の文字がAである場合、tをt[:-1]に保存し、最後の文字Aのtを削除します.
    ->tの最後の文字がBの場合、tをt[:-1]として保存し、tをt[:-1]として保存します.つまり、反転したtです.
  • tがsと異なる場合、答えは0に更新される.
  • の回答を印刷します.
  • Code

    s=str(input())
    t=str(input())
    answer=1
    while len(t)>len(s):
        if t[-1]=='A':
            t=t[:-1]
        else:
            t=t[:-1]
            t=t[::-1]
    if t!=s:
        answer=0
    print(answer)