No.675 ドットちゃんたち
タグ : / 解いたユーザー数 68
作問者 : nmnmnmnmnmnmnm / テスター : Pulmn
問題文
ドットちゃんはXY平面上の整数座標に立つことができるキャラクターである。
最初はXY平面上にドットちゃんは1つも存在しない。
ドットちゃんは次のように発生と移動を$N$回だけ繰り返す。
・ドットちゃんは整数座標($Px$,$Py$)で1つ生まれる。
・すべてのドットちゃんは指定されたXY平面上での移動命令に従う。
指定される移動命令は次のような3種類の命令のうちいずれか1つである。
命令1:X軸の正の方向(右)に$Dx$だけ移動する。
命令2:Y軸の正の方向(上)に$Dy$だけ移動する。
命令3:原点を中心に時計回りに90度回転する。
最終的にドットちゃんはXY座標上に$N$つ存在することになる。
最初に生まれたドットちゃんから順にいちばん最後にいる座標を答えよ。
入力
$N$ $Px$ $Py$ $Command_0$ $Command_1$ $\vdots$ $Command_{N-1}$
$N$はドットちゃんが発生と移動する回数。$1 \le N \le 100000$。
($Px$,$Py$)はドットちゃんが生まれる整数座標。$-1000000000 \le Px,Py \le 1000000000$。
$Command_i$は$i$番目に指定される命令。
命令1の場合は数字の'1'と次いで整数$Dx$がスペースで区切って与えられる。$0 \le Dx \le 10000$。
命令2の場合は数字の'2'と次いで整数$Dy$がスペースで区切って与えられる。$0 \le Dy \le 10000$。
命令3の場合は数字の'3'が与えられる。
出力
$Ax_0$ $Ay_0$
$Ax_1$ $Ay_1$
$\vdots$
$Ax_{N-1}$ $Ay_{N-1}$
ドットちゃんを上から生まれた順で0番目から${N-1}$番目まで出力せよ。
ただし、ここで($Ax_i$,$Ay_i$)は$i$番目に生まれたドットちゃんの最終的な座標のことである。
すべての行の最後に改行を入れること。
サンプル
サンプル1
入力
2 0 1 1 3 1 4
出力
7 1 4 1
0番目のドットちゃんは(0,1)で生まれ、X軸方向に3移動し、またX軸方向に4移動する。
1番目のドットちゃんは(0,1)で生まれ、X軸方向に4移動する。
0番目のドットちゃんは最終的に(7,1)に存在する。
1番目のドットちゃんは最終的に(4,1)に存在する。
サンプル2
入力
3 1 2 1 2 2 1 3
出力
3 -3 3 -1 2 -1
0番目のドットちゃんは(1,2)で生まれ、X軸方向に2移動し、Y軸方向に1移動し、原点を中心に時計回りに90度回転する。
1番目のドットちゃんは(1,2)で生まれ、Y軸方向に1移動し、原点を中心に時計回りに90度回転する。
2番目のドットちゃんは(1,2)で生まれ、原点を中心に時計回りに90度回転する。
0番目のドットちゃんは最終的に(3,-3)に存在する。
1番目のドットちゃんは最終的に(3,-1)に存在する。
2番目のドットちゃんは最終的に(2,-1)に存在する。
サンプル3
入力
4 2 3 3 3 3 3
出力
2 3 -3 2 -2 -3 3 -2
0番目のドットちゃんは最終的に生まれた場所に戻ってきました。
サンプル4
入力
5 0 0 1 0 2 0 1 0 1 0 2 0
出力
0 0 0 0 0 0 0 0 0 0
すべてのドットちゃんが原点で生まれたまま動きません。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。