原创 SCU 4438 Censor (KMP)

題目大意: 就是現在給出兩個字符串A, B, 長度都不超過500萬, 要求每次將B中第一次A的出現刪除, 然後將B剩下的兩段前後合併, 然後重複這個過程直到沒有可以刪除的A位置, 問最後剩下的串是什麼 大致思路: 首先看這個字符串的長度

原创 HUST 1017 Exact cover (Dancing Links 模板題)

題目大意: 就是N*M的01矩陣, 初始有C(C <= 100)個1, 問從中選出一些橫行是否能使所有列都恰好有一個1 大致思路: 跳舞鏈解決的矩陣精確覆蓋問題, 模板題 模板來自kuangbin大爺Orz 代碼如下: Result

原创 POJ 3074 Sudoku (DLX解經典數獨)

題目大意: 給出一個數獨求解, 題目保證有唯一解 要求每行每列每個九宮格都恰好包含數字1~9 大致思路: 學習DLX的簡單練習 構造矩陣的方法如下: 一共324列 剛開始沒考慮到每個格子只能填一個數樣例沒過, 再加上81列表示每個格子的

原创 POJ 1741 Tree (樹分治之點分治)

題目大意: 給出一棵樹, 點數n <= 10000, 給出每條邊的權值和K, 求滿足兩點距離不超過K的點對數 大致思路: 馬上就要區域賽了...走前看點點分治的題...遵循昊哥的教導 這個題就是點分治很裸的一個模型了 所謂點分治, 每次

原创 HDU 4848 Wow! Such Conquering! 搜索+剪枝

題目大意: 就是一個30個點的圖, 有邊權, 求從點1出發經過所有點的最小罰時 每個點(起點除外)有一個期限, 不能再超過這個期限的時間到達 大致思路: 首先這就是一個旅行商問題加上了一個最後期限的限制 不過這個題使用搜索求解 首先用f

原创 POJ 3076 Sudoku (DLX解數獨)

題目大意: 解一個16*16形式的數獨 要求每行每列每個16宮格都包含A~P 大致思路: 和POJ 3074一個道理...繼續練手 剛開始數組開小調了一段時間... 代碼如下: Result  :  Accepted     Memo

原创 ACdream 1069 無恥的出題人 無聊寫着玩的題

題目大意: 現在題目被加密了, 給出加密後的串 hjxh dwh v vxxpde,mmo ijzr yfcz hg pbzrxdvgqij rid stl mc zspm vfvuu vb uwu spmwzh. 一直前面4個詞是giv

原创 Codeforces 557E Ann and Half-Palindrome (Trie樹)

題目大意: 就是現在給出長度不超過5000的只包含小寫字母'a'和‘b'的字符串 定義半迴文串:字符串S是半迴文串的條件是S[i] = S[|S| - i + 1] 對所有的計數 i, i <= |S|成立 然後給出整數K, 求給出的字符

原创 HDU 4850 Wow! Such String! 歐拉回路

題目大意: 就是現在對於每一次給出的N <= 50W, 構造一個長度爲N的串只包含小寫字母且每一個長度>=4的子串都只出現一次 如果不可能就輸出Impossible 大致思路: 首先考慮到如果長度爲l + 1的串出現了兩次那麼長度爲l的

原创 HDU 5219 Repeating 後綴數組 + 莫比烏斯函數

題目大意: 就是現在給出一個長度不超過100100的只包含小寫字母的字符串, 求問這個串有多少個字串沒有循環節, 如abab有循環節ab, 而aba, a, abc沒有 大致思路: 好久沒寫題解了...補一個歷史遺留的坑... 首先這題

原创 ACdream 1019 Palindrome 樹狀數組+Hash

題目大意: 就是現在給出一個長度不超過100萬的字符串, 有兩種操作, 修改某個位置的字符, 詢問 [L, R] 這個部分的字串是否是迴文串 大致思路: 這個題剛開始用線段樹寫了一發發現MLE... 然後就換樹狀數組了...不知道zkw

原创 ZOJ 3209 Treasure Map (DLX精確覆蓋問題)

題目大意: 給出一個n*m的矩形, n, m <= 30, 從p <= 500個矩形中選擇一些矩形使得這些矩形不重合但剛好拼湊出n*m的這個矩形(矩形位置都不能移動), 求從給出的矩形中最少需要挑出幾個才能滿足這個條件 大致思路: 就是

原创 HDU 4757 Tree (倍增算法求LCA + 可持久化Trie樹)

題目大意: 就是現在給出一棵樹, 結點個數不超過10W, 每個節點上有一個不超過2^16的非負整數, 然後10W次詢問, 每次詢問兩個節點的路徑上的所有數中異或上給出的數的最大值 大致思路: 剛開始做這個題想的是樹鏈剖分之後用線段樹套T

原创 SPOJ 1771 NQUEEN (DLX解n皇后問題)

題目大意: 就是現在在一個n*n的棋盤上已經擺放了一些皇后, n <= 50 現在要求找到對應的一種方案使得棋盤上有n個皇后互不攻擊 大致思路: 就是舞蹈鏈解決的一類問題....用列表示對應行, 列, 左斜線和右斜線分別對應的佔用情況

原创 POJ 2676 Sudoku (DLX解數獨)

題目大意: 經典數獨, 9*9 每行每列每個九宮格都有1~9, 多解輸出任意一解 大致思路: 沒什麼好說的數獨了....和POJ 3074一樣.. 代碼如下: Result  :  Accepted     Memory  :  21