問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!
プログラムを表す文字列 s が与えられます。この文字列を実行した結果、各変数の値がどうなっているかを出力してください。
プログラムは以下のルールで与えられます。
・ プログラム全体は、「代入文;代入文; ... ;代入文;」という形式で表されます。
・ 代入は「変数=値」という形式でおこなわれ、このとき変数に値が代入された上で、その値がこの代入文の評価値となります。代入は右結合であり、
たとえば「a=b=1」は「a=(b=1)」と解釈されます。
・ 値とは以下のいずれかです。
1. 整数
2. 変数の値 (ただし、その変数が以前に出現していない場合は、その変数の値は 0 とみなします)
3. 代入文の評価値
・ 英小文字からなる連続する文字列は整数型の変数を表します。
たとえば、プログラム 'a=1;c=b=a;a=21;' が与えられた場合、このプログラムを実行すると、変数 a は 21、変数 b は 1、変数 c は 1 となります。
s
プログラムを実行し、各変数の値の整数のみを、変数名の昇順で改行区切りで出力してください。
出力の最後に改行を入れ、余計な文字、空行を含んではいけません。
すべてのテストケースにおいて、以下の条件を満たします。
・ 1 ≦ |s| ≦ 30000 = 3 × 10^4 (|s| は文字列 s の長さ)
・ s に出現する変数名の長さは 1 以上 100 以下
・ s に出現する整数は 1 以上 1000000000 以下
a=1;c=b=a;a=21;
21
1
1
x=1;y=2;tmp=x;x=y;y=tmp;
1
2
1