予選B-B 「天下一リテラル」
問題文はこちら。
構文解析を行うことで辞書型なのか集合型なのかを判別して答えを出すこともできますが、よりシンプルな解法が存在します。
最も外側にある{
と}
にのみ囲まれた:
の有無を確認することで判別することができます。
左から右へS
を走査した場合、{の個数 - }の個数 == 1
となる位置にある文字のみを考えれば良いことになります。
その上で:
が存在するならばdict
になり、:
が存在しない場合はset
になります。ただし、{}
の場合は例外で、dict
になります。