日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CodeForces-500C

發布時間:2023/12/10 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CodeForces-500C 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

傳送門

給n本不同重量的一摞書編號1~n。給定m次操作。操作b代表花費標號為b的書上方其他書的重量總和,將書b位移到這疊書的最上方。問初始書應該如何疊放,才能使m次操作后總花費最小

輸入 n本書 m次操作

?? ? ? n個數 書的重量

m個數 操作對象

輸出 總花費

?

題解:我們先考慮每本書讀不超過一次。首先就會想到最后哪本書是在最上面是確定的,貪心地考慮最后一步的花費最小,那么這本書應該放在最上方。可上一步的操作已經確定了哪本書目前處于最上方,所以最后這本書最好的情況是處于上方第二本。之后我們將這兩本書看成一本,重復上述看待問題的過程,就可以得出書的排放順序應該與書第一次出現的順序相同。由于每本書的花費只與它上方的書的重量相關,它下方的書如何擺放不影響結果,所以我們這樣對下方的書的排列貪心求解,遞歸回去,得到的答案一定是正確的。在考慮一本書出現多次是否情況有變。當一本書第二次出現,兩次出現之間的書的重量一定對答案有貢獻,如果我們改變這本書的初始位置,只會增大對這本書第一次操作的花費,顯然只會使答案變大。

總之,我們利用的就是第j次操作時,前面j - 1次操作的書必然在其上方,無論這本書處于哪個位置,前j-1次操作的書的重量都一定對答案有貢獻。所以這個貪心沒有后效性。記錄每本書第一次出現的時間就好了。沒有出現的書按任意順序擺放即可

轉載于:https://www.cnblogs.com/xFANx/p/7403316.html

總結

以上是生活随笔為你收集整理的CodeForces-500C的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。