洛谷p4838 p哥破解密碼
對於n<=1e7的資料,可以使用常規的動態規劃。用f[i][0/1/2]分別表示長度為i,且以aa/a/b結尾的字串的數量。可以得到狀態轉移方程:
f[i][0]=f[i-1][1] , f[i][1]=f[i-1][2] , f[i][2]=f[i-1][0]+f[i-1][1]+f[i-1][2]
對於大資料,使用矩陣優化。
#include using namespace std;
typedef long long ll;
const ll mod=19260817;
int n;
struct matrixst,nxt;
inline matrix mul(matrix a,matrix b)
inline matrix quick_pow(matrix a,ll b)
return c;
}inline void pre()
inline void solve()
int main()
return 0;
}
洛谷 P4838 P哥破解密碼 題解
a1 1 1 2 4 7 13 24 44 81 149 274 a2 0 1 1 2 4 7 13 24 44 81 149 274 b 1 2 4 7 13 24 44 81 149 274 f a2 a2 a1 a1 b b a1 a2 f 19260817 includeusing name...
題解 P4838 P哥破解密碼
矩乘優化遞推 hint n 10e9,線性的都沒法了 f i j i 1,n j 0,2 表示 n i 時,乙個數末尾有j個a的方案數。由於末尾有a的可能性只與上一狀態中乙個狀態有關 1個a與0個a有關,2個a與1個a有關 而末尾有0個aa的情況,只要塞乙個b就行了。所以是上一狀態中所有狀態方案數之...
洛谷P5049 洛谷P5022 題解 旅行
原題 資料加強版 加強版 參考你谷題解 終於調過了 又是一如既往的申必錯誤 noi plus石錘了 原題的資料允許我們 o n 2 暴力斷邊,但是加強版的資料達到了 n log n 級別,我們必須在斷邊這一環節尋求更好的解法。考慮我們進入環後在何處回溯 根據繼續走環走到的點分類 設當前已經從 b 走...