B - ロイヤルストレートフラッシュ Editorial /

Time Limit: 2 sec / Memory Limit: 64 MB


問題文

シャッフルされたトランプの山札が与えられる。
ここからロイヤルストレートフラッシュを作りたい。
山札からカードを 1 枚ずつめくり、手札に入れるか捨てるという操作を繰り返す。
最短でロイヤルストレートフラッシュが完成したときの捨て札を、カードを捨てた順に出力せよ。
なお、初期状態で手札は空とし、ロイヤルストレートフラッシュが完成したとき、手札に余分なカードが存在してはならない。


与えられる山札を表す文字列は、以下のBNFに従う。

<山札>   ::= <カード> | <山札> <カード>
<カード> ::= <マーク> <番号>
<マーク> ::= "S" | "H" | "D" | "C"
<番号>   ::= "A" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "J" | "Q" | "K"

ロイヤルストレートフラッシュとは、同じマークの「10、J、Q、K、A」の組み合わせのことを言う。
すなわち、「S10, SJ, SQ, SK, SA」、「H10, HJ, HQ, HK, HA」、「D10, DJ, DQ, DK, DA」、「C10, CJ, CQ, CK, CA」のカードの組み合わせ 4 種類がロイヤルストレートフラッシュである。


入力

入力は以下の形式で標準入力から与えられる。
s
  • 山札のカードを表す文字列 s1 行で与えられる。
  • 山札にはマークと番号の両方が等しいカードの組は存在しない。
  • ロイヤルストレートフラッシュを作ることが可能であることが保証される。

出力

ロイヤルストレートフラッシュを最短で作ったときの捨て札を表す文字列を 1 行で出力せよ。
捨て札はカードを捨てた順に記述する必要がある。
捨て札が無い場合は、 0 (数字のゼロ) を出力せよ。
なお、行の終端には改行が必要である。

入力例 1

CQSAS10SQH10SKSJD3

出力例 1

CQH10
  • 「CQ」 と 「H10」 を手札に入れずに捨てると、 7 枚めくった時点で、手札が「SA, S10, SQ, SK, SJ」 の 5 枚となり、ロイヤルストレートフラッシュが完成する。

入力例 2

S10SJSQSKSAC2

出力例 2

0