#15815: 有人知道這題greedy 的原理嗎?


buanyz03 (張晁瑋)

學校 : 新北市立板橋高級中學
編號 : 2629
來源 : [114.25.190.198]
最後登入時間 :
2023-09-06 15:43:50
b672. A Special Automobile Race -- SEARCC-ISSC國際學生程式設計競賽 | From: [203.69.87.1] | 發表日期 : 2018-11-02 11:54

每次可走的最大距離 可能停靠的每個加油站 都去看停下來之後 比較可走的最大距離 就可以AC了


只是想請教原理是甚麼 如何證明這樣的想法是對的

 
#15820: Re:有人知道這題greedy 的原理嗎?


OwO310659 (OwO)

學校 : 新北市立板橋高級中學
編號 : 58647
來源 : [118.150.111.60]
最後登入時間 :
2024-04-25 01:16:40
b672. A Special Automobile Race -- SEARCC-ISSC國際學生程式設計競賽 | From: [106.105.27.148] | 發表日期 : 2018-11-02 21:02

這邊提供一種想法:
你會發現在下一輪的選擇包含有兩種可能,

1. 前一輪可以選的加油站,
  如果該加油站比較好那你上一輪直接選該加油站就好,
  所以如果當前選擇最佳就不會選擇前一輪可以選的加油站。

2. 前一輪不能選的加油站,
  你會發現在這之中選擇可以走到最遠(不一定是行走最遠)的加油站一定最好,
  因為選擇其它加油站在下一輪能選擇的加油站也只有2種可能,
  a. 當前就能選擇的加油站: 根據 1. 來說, 如果再下一輪選擇當前能選擇的加油站, 就代表剛剛的選擇不是最佳解。
  b. 當前不能選擇的加油站: 但會發現這些加油站都會被包含在走到最遠的加油站下一輪能選的加油站之中。
  所以根據 a. 和 b. 選擇其它加油站並不會比較好,
  所以選擇可以走到最遠的加油站一定最好。

以上是我的想法提供給你參考~
希望有幫助到你~ OwO

 
ZeroJudge Forum