100 atcoder#ABC187C. [ABC187C] 1-SAT

[ABC187C] 1-SAT

配点 : 300300

問題文

NN 個の文字列 S1,S2,,SNS_1, S_2, \dots, S_N が与えられます。 各文字列は、英小文字からなる空でない文字列の先頭に !00 文字か 11 文字付加したものです。 文字列 TT は、TT の先頭に !00 文字付加しても 11 文字付加しても S1,S2,,SNS_1, S_2, \dots, S_N のいずれかに一致するとき、不満な文字列であるといいます。 不満な文字列があるかどうか判定し、あれば 11 つ示してください。

制約

  • 1N2×1051 \le N \le 2 \times 10^5
  • 1Si101 \le |S_i| \le 10
  • SiS_i は英小文字からなる空でない文字列の先頭に !00 文字か 11 文字付加したものである。

入力

入力は以下の形式で標準入力から与えられる。

NN

S1S_1

\vdots

SNS_N

出力

不満な文字列が存在する場合、不満な文字列を 11 つ出力せよ。 不満な文字列が存在しない場合、satisfiable と出力せよ。

6
a
!a
b
!c
d
!d
a

文字列 a は、先頭に !00 文字付加する場合は S1S_1 と、11 文字付加する場合は S2S_2 と一致するため不満な文字列です。 a の他に、d を出力しても正解になります。

10
red
red
red
!orange
yellow
!blue
cyan
!green
brown
!gray
satisfiable