2013年6月6日木曜日

筋トレ2日目: SRM570 Div1Easy "Robot Herb"

■時間
15分ぐらい

■問題 SRM570 Div1 Easy "Robot Herb"
決められたプログラムを繰り返し実行して移動するロボットの最終位置を求めろ

■試した解き方
パラメータの範囲からして、真面目にシミュレーションすると莫大な時間がかかってしまうことは明らか。
一回プログラム実行したあとの向きは(前回の向き+定数)%4なので、4回やれば必ず元の向きになる
(もっというと、一回の実行後に元の向きにならない場合は、4回実行後必ず原点に戻ってる。今回は使わないけど)
なので、4回実行した場合の位置のズレを普通にシミュレーションし、全体の実行回数 div4回掛け算し、残りの数回分(T%4)はシミュレーションすれば求まる。
実行時間はO(a.length)

接続の問題でsubmitとシステムテストできてないが、多分大丈夫。

■Editorial
同じ解き方だった。

■反省
とても簡単だった。
これぐらい簡単な問題はもっと早くsubmitできないといけんね。

■筋トレ記録
勝率50% (1/2)







0 件のコメント:

コメントを投稿