Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

yukicoder : No.139 交差点

398 views

Published on

yukicoderの出題問題です。

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

yukicoder : No.139 交差点

  1. 1. yukicoder No. 139 交差点 出題/解説 kmjp 1
  2. 2. 問題 • 原点から距離Lの場所まで速度1で進む • 区間(𝑋𝑖, 𝑋𝑖 + 𝑊𝑖)は交差点となっており、交差点 は青信号の間に渡りきれる時だけ進入する – 信号は𝑇𝑖毎に青赤が切り替わる – 渡りきれないときは𝑋𝑖で待つ • 出発後、距離Lに到達するまでの時間を答えよ
  3. 3. 解法(1) • 交差点入口まで一気に進み、信号で待つ、を 繰り返していけばよい • 以下テストケース1の例 3 0 L 交差点𝑡 = 0 𝑡 = 5 信号 待機 𝑡 = 6 𝑡 = 7 𝑡 = 8 待機 待機 𝑡 = 11
  4. 4. 解法(2) • 交差点入口でどの位待つか? • 交差点入口 𝑋𝑖 についた時刻を 𝑡 として、 𝑡 が以下を満たせば交差点に進入できる – 𝑡 % 2𝑇𝑖 ≤ 𝑇𝑖 : 交差点に入るときに青信号 – 𝑡 + 𝑊𝑖 % 2𝑇𝑖 ≤ 𝑇𝑖 :交差点を渡りきるときに青信号 – まとめて 𝑡 % 2𝑇𝑖 ≤ 𝑇𝑖 − 𝑊𝑖 の1つの式で判定可能 • 逆に𝑡 % 2𝑇𝑖 > 𝑇𝑖 − 𝑊𝑖だったら、次に青信号に なるまで2𝑇𝑖 − (𝑡 % 2𝑇𝑖)待つ 4
  5. 5. 元ネタ・所感 • 道を歩いていて思いついた問題 • これを2次元にした最短路問題が Google Code Jam 2009 Round 1Aで 出題されています 5

×