2015 ACM多校訓練第五場

歡迎點此閱讀QvQ

題外話

第五套感覺難度適中,今天把它補掉了。。。


hdu 5343(1001) MZL’s Circle Zhou

Solution

這題深深的暴露了自己SAM 水平只差,每次遇到SAM 的題,都不太能做出來,說到底還是對SAM 理解不夠深刻吧= =。。
由於是把兩個串拼起來,容易想到,對第一個串正着建立SAM ,第二個串反過來建SAM ,用dp[i] 表示第二個串中以i 這個字符開頭的串有多少個。
然後在第一個串SAM 節點上,如果不能轉移到字母c ,答案加上dp[c] 就好了
仔細想想,其實這題並不難= =。。。自己太弱了

Code


hdu 5344(1002) MZL’s xor

Solution

水題,發現不同項都抵消掉了。。。

Code


hdu 5345(1003) MZL’s combat

Solution

貌似有點煩,先跳過= =過段時間補


hdu 5346(1004) MZL’s game

Solution

dp好題,狀態設計非常高端,和前幾天CC月賽一個題思想非常相似,很好的idea。
正常dp複雜度無法保證,不妨考慮,一個選人順序的全排列,如果一個人掛了,就繼續選下一個人。由於每個人在每個位置概率都是1n ,我們不妨考慮編號1n
這樣轉化後我們就可以做了!
考慮dp[j][i] 表示i 這個人受到j 次攻擊的概率,分兩種情況考慮
* (1) 第i1 個人沒掛,則第j 次攻擊是來自第i1 的人的,於是dp[j][i]=dp[j1][i1]×(1p)j1
* (2) 第i1 個人掛掉了,則受到的攻擊次數和第i1 個人相同,於是dp[j][i]=dp[j][i1]×(1(1p)j)
於是就做完了,考慮全排列的這種思想,學到了。。

Code


hdu 5347(1005) MZL’s chemistry

Solution

無聊題,隨手打個表

Code


hdu 5348(1006) MZL’s endless loop

Solution

類似於一筆畫,奇數度的兩兩連一下,跑歐拉回路就完了

Code


hdu 5349(1007) MZL’s simple problem

Solution

水題,直接用set或者維護一下都可以

Code


hdu 5350(1008) MZL’s munhaff function

Solution

其實這就是個huffman樹的生成過程,想明白那個式子和它的轉換關係即可

Code


hdu 5351(1009) MZL’s Border

Solution

水題,關於Fibonacci 的一般打個表就看出規律了,找第一個i,m+1<|fib[i]| ,答案就是m|fib[i2]|

Code


hdu 5352(1010) MZL’s City

Solution

很容易想到的做法是,把每個操作1 拆成k 個點,與能相連的城市連一條邊,跑匹配即可,由於要求字典序最小,倒着跑匹配即可。也可用最大流,費用流來做

Code

完結撒花!
繼續補題!>_<

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章