poj 2888 Magic Bracelet
http://poj.org/problem?id=2888
POJ2888——Pólya思想+數論+動規+矩陣快速冪(經典)
置換問題的關鍵在於降低枚舉置換的復雜度和找不動點的復雜度。
和基礎的置換不同在於每個環內部不能無腦填相同的顏色了。
但是枚舉環還是基本思路一定是要枚舉的。
考慮降低枚舉置換的復雜度:
環只和gcd有關,枚舉gcd一起統計。
把上面的換成下面的。枚舉gcd
由於根號的分解不是滿的,所以復雜度會降低。
對於每個置換的不動點個數:
即每隔i個都相等。
所以直接分成i條,然後矩陣快速冪優化dp即可。
轉移矩陣的i次冪算出來,
再枚舉第一個填j顏色,對應乘起來就是整個第j行的值,選擇不會和最後一個沖突的值加起來即可。
O(10^3logn*sqrt(n))
可以過。
啟示我們,不動點的個數不一定要按照環來統計
也可以每i個看成一個段來統計
置換相同的一起枚舉。考慮環,不動點在條件下進行計算。
poj 2888 Magic Bracelet
相關推薦
poj 2888 Magic Bracelet
blog 不同 problem pro org 啟示 image nbsp 相同 http://poj.org/problem?id=2888 POJ2888——Pólya思想+數論+動規+矩陣快速冪(經典) 置換問題的關鍵在於降低枚舉置換的復雜度和找不動點的復雜度。 和基
poj 3624 Charm Bracelet
possible -c sca namespace scanf let bili time more Charm Bracel
POJ 3624 Charm Bracelet G++
#include <iostream> using namespace std; int W[3402]; int D[3402]; int a[12881]; int b[12881]; //北京大學暑期課《ACM/ICPC競賽訓練》例題 int main()
poj2888 Magic Bracelet-Burnside
這是第一次碰到polya定理用動態規劃的矩陣優化來做題,前面都是無條件染顏色的基礎題。原理引用的部落格中講得非常清楚。 以下是我的草稿,當做是個補充吧 #include<cstdio> #include<iostream> #include
POJ 3624 Charm Bracelet
題目大意: 美麗的貝希想要增加自己魅力值,但是帶上手鐲會增加體重。要保證自己體重要在限制內,儘量增加自己的魅力。 這是一道經典的0-1揹包問題,因為體重值太大,用二維陣列來DP不現實。我用的是滾動陣列。 #include <cstdio> #includ
POJ 3624 Charm Bracelet(01 揹包)
題目傳送門 Description Bessie has gone to the mall's jewelry store and spies a charm bracelet. Of course, she'd like to fill it with the best
【POJ2888】Magic Bracelet-Burnside引理+數論+DP矩陣優化
測試地址:Magic Bracelet 題目大意:要用N(≤109)顆珠子連成環形的手鐲,共有M(≤10)種不同的珠子,規定K個條件,每個條件規定某兩種珠子不能相鄰,旋轉後相同的方案視作相同,問有多少
POJ 3518 Prime Gap(素數)
for org 篩選法求素數 lan article sizeof tar eof rim POJ 3518 Prime Gap(素數) http://poj.org/problem?id=3518 題意: 給你一個數。假設該數是素數就輸出0. 否則輸出比
POJ 2586 Y2K Accounting Bug(枚舉大水題)
lin uri ssd 數據丟失 span com reported cpp rem Y2K Accounting Bug Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 1067
poj 1182 (帶權並查集)
ios int 查找 食物 spa script ble 距離 輸出 食物鏈 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 71361 Accepted: 21131 Des
poj 2559 Largest Rectangle in a Histogram 棧
hist func opc txt class sse typedef ++ limit // poj 2559 Largest Rectangle in a Histogram 棧 // // n個矩形排在一塊,不同的高度,讓你求最大的矩形的面積(矩形緊挨在一起)
POJ 3461 kmp
desc href i++ -a spl ffi mem table art Oulipo Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 40168 Acce
POJ Knight Moves 2243 x
rate tput ble esc 當前 malle center namespace string Knight Moves Time Limit: 1000MS Memory Limit: 65536K
poj:1850 Code(組合數學?數位dp!)
urn font log strlen adc i++ 分享 依次 one 題目大意:字符的字典序依次遞增才是合法的字符串,將字符串依次標號如:a-1 b-2 ... z-26 ab-27 bc-52。 為什麽題解都是組合數學的...我覺得數位dp很好寫啊(逃
POJ 2533 Longest Ordered Subsequence DP
tro wid element ogr cst ++ max integer article Longest Ordered Subsequence Time Limit: 2000MS Memory Limit: 65536K Total Submi
POJ 2488:A Knight's Journey
graph for erp 技術分享 rpe one star void get A Knight‘s Journey Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 29241
BZOJ 2288 【POJ Challenge】生日禮物(貪心+優先隊列)
ace urn ons target challenge pri 最大 font return 【題目鏈接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2288 【題目大意】 給出一列數,求最多取m段
POJ 1849 Two(遍歷樹)
bold cost spa align div col sizeof 最小 turn POJ 1849 Two(遍歷樹) http://poj.org/problem?id=1849 題意: 有一顆n個結點的帶權的無向樹, 在s結點放兩個機器人,
POJ 2486 Apple Tree
reac steps int sca have font eof bmi part
Poj - 3279 Fliptile
black 枚舉 pri 返回 flip algo with ips cnblogs Fliptile Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 10018 Accepted: