CF競賽題目講解_CF1775F(排列組合 + DP)
2023-01-24 16:52 作者:Clayton_Zhou | 我要投稿
AC代碼
https://codeforces.com/contest/1775/submission/190267560
題意:
如你所知,火星科學家正在積極從事太空研究。冥王星是最高優(yōu)先級之一。
為了更詳細地研究這顆行星,決定在冥王星上建造一個實驗室。
眾所周知,實驗室將由n大小相等的方形塊組成。為了方便起見,
我們假設冥王星的表面是一個由垂直線和水平線劃分成單位正方形的平面。
每個廣場要么被一個實驗區(qū)占用,要么沒有,只有n個廣場被占用。
因為每個街區(qū)都是方形的,所以它有四堵墻。如果一堵墻與另一塊相鄰,則將其視為內(nèi)側,否則視為外側。
冥王星以其極冷的溫度而聞名,因此實驗室的外墻必須隔熱。每個外墻需要一個保溫層。
因此,實驗室外墻的總長度(即其周長)越大,就需要更多的隔熱材料。
考慮下圖中的實驗室布局。結果表明,實驗室由n=33個區(qū)塊組成,所有區(qū)塊共有24個外墻,
即需要24個絕緣單元。你應該以最佳的方式建造實驗室,即盡量減少隔熱層的數(shù)量。
另一方面,可能有許多最佳選擇,因此科學家可能會對使用最小數(shù)量的絕緣材料(取素數(shù)m的模)
建造實驗室的方法感興趣。
如果兩種方式在重疊而不轉彎時相同,則認為它們是相同的。因此,如果實驗室計劃被旋轉90°,
這樣的新計劃可以被視為一種單獨的方式。
為了幫助科學家探索冥王星,你需要編寫一個程序來解決這些難題。
輸出:
第一行包含兩個整數(shù)t和u-測試用例的數(shù)量和測試類型。
如果u=1,你需要找到以最佳方式構建實驗室的任何方法,
如果u=2,你需要計算所有方案的數(shù)量。
題解:
排列組合 + DP
標簽: