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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

2021 年百度之星·程序设计大赛 - 初赛一

發布時間:2023/12/2 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2021 年百度之星·程序设计大赛 - 初赛一 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1001

題意:給出一個無向圖,其中邊有兩種,附魔和沒附魔的。初始在1號點,狀態為沒附魔,每次會等概率隨機挑選一條邊走,當經過附魔邊時,狀態會改變(附魔->沒附魔,沒附魔->附魔),問走k步后到達n號點狀態為附魔的概率。

比賽時,我錯誤的認為走出每條路徑的概率都是相等的,一個反例如下:

?路徑1-2-5的概率為,而路徑1-3-5的概率為

首先講一下官方題解做法:

最終答案為:走k步到n且狀態為附魔的概率/任意走k步的概率

顯然任意走k步的概率為1,所以只需求出分子。我們發現,如果沒有狀態,是很容易求出1到n的概率,所以我們可以將狀態轉化到點上:將每一個點拆成兩個,附魔點和沒附魔點,代表當前的狀態。若一條邊時附魔邊,則將對應的一點的附魔點于另一點沒附魔點相連,若是普通邊,則將對應的附魔點和沒附魔點相連。

這樣轉化后,我們發現只需求出1號沒附魔點到n號附魔點的概率就行了。

復雜度

接下來是我比賽時的做法:

還是求走k步到n且狀態為附魔的概率,設數組表示從i到j,且滿足在j點是狀態為附魔的概率,表示從i到j的概率,但對在j點的狀態沒有限制。

考慮矩陣乘法中的一次轉移,枚舉了從i到j的一個中間點k,(轉移后的)可以直接加上,那么考慮,有兩種情況,從i到k時變成附魔,而從k到j狀態不變,概率為,對應的,另一種情況的概率為,兩種情況相加即可。

?復雜度同樣為

1003

題意:有n臺電腦,其中第k臺電腦壞了,有m個交換方式依次進行,問對于1~n,使得最后壞的電腦交換到這個位置,最少放棄幾次操作

我們可以定義一個狀態表示前i個操作,交換到j的最小代價(即最少放棄幾次操作)

對于每個交換,與其無關的剩下n-2個電腦是否放棄此次操作并無關系,所以為使代價最小,此次不放棄,即

而對于a,如果執行此次交換操作,那么代價為,而如果放棄,則代價為,取兩者較小值即可

利用滾動數組優化空間,復雜度為

總結

以上是生活随笔為你收集整理的2021 年百度之星·程序设计大赛 - 初赛一的全部內容,希望文章能夠幫你解決所遇到的問題。

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