B - 天下一リテラル
解説
/
実行時間制限: 2 sec / メモリ制限: 256 MB
問題文
スクリプト言語 hnw には 3 つの型が存在します。整数型、辞書型、集合型です。
整数型のリテラルは、 0 以上 10^6 以下の整数を十進数で表記したものとして表現できます。
辞書型のリテラルは、“key” と “value” を :
でつなげたものを {
と }
の間にカンマ区切りで並べたものとして表現できます。
空でない集合型のリテラルは、要素を{
と}
の間にカンマ区切りで並べたものとして表現できます。
辞書型の “key” と “value” および集合型の要素は、整数型、辞書型、集合型のいずれかです。
スクリプト言語 hnw のリテラルは上記のものですべてであり、以下のEBNFに従います。
ただし、INTEGER
は整数型、SET
は集合型、DICT
は辞書型を表します。
DICT = "{" , EXPR , ":" , EXPR , { "," , EXPR , ":" , EXPR } , "}" | "{}" ; SET = "{" , EXPR , { "," , EXPR } , "}" ; EXPR = DICT | SET | INTEGER ;
集合型か辞書型のリテラルが与えられます。型がどちらなのかを判別してください。
入力
入力は以下の形式で標準入力から与えられる。
S
問題文中の EBNF に沿った集合型あるいは辞書型の値を示す文字列 S が 1 行で与えられる。
文字列 S の長さは 50000 以下である。
入力に空白は含まれない。
出力
値が集合型の場合は set
を、辞書型の場合は dict
を 1 行に出力しなさい。
出力の末尾には改行を入れること。
配点
この問題には部分点が設定されていない。全てのテストケースに正解した場合は、 40 点が与えられる。
入力例1
{1:2}
出力例1
dict
入力例2
{1,2}
出力例2
set
入力例3
{}
出力例3
dict