原创 HDU 5293 Tree chain problem - 樹形dp&樹狀數組優化

題目描述 題目大意: 給定一棵有 n 個點的樹,以及 m 條樹鏈,其中第 i 條樹鏈 的價值爲 wi,請選擇一些沒有公共點的樹鏈,使得價值和最大。 1 ≤n,m≤ 100000。 Source:2015 Multi-Univ

原创 HYSBZ/BZOJ 1036 [ZJOI2008] 樹的統計Count - 動態樹LCT

題目描述 看着就是個LCT的模板題,可惜忘記在change的時候Update了,最終爆零!悲慘經歷,教訓啊。 題目有坑: 1. 有負數,要麼最開始全部賦值爲-INF,否則要判斷兒子是否爲0 2. Link之後要Update,

原创 BZOJ(本校) 3027 快速傅里葉變換 - 概率與期望&dp

題目描述 有n 顆珠子,珠子的編號依次爲1 到n。第i 顆珠子的美麗值爲vi,這是一個在1 到m 之間的正整數。 查爾明將會從中等概率隨機抽取1 到n 顆珠子,那麼此時他的高興度爲所有抽到的珠子的美麗值的最大公約數。查爾明想知

原创 BZOJ(本校) 2665 密碼鎖 - 思維&dp

Time Limit: 1s Memory Limit: 512MB 【題目描述】 從前有一把密碼鎖,由N個開關組成。一開始的時候,所有開關都是關上的。當且僅當開關x1,x2,x3,…xk爲開,其他開關爲關時,密碼鎖纔會打開

原创 HYSBZ/BZOJ 1038 [ZJOI2008] 瞭望塔 - 計算幾何

題目描述 分析: 題目中說的“可以看見”means 在折線的每段所在直線朝x軸正方向,直線的左邊一片區域(其實就是折線的每段所在直線的上面) 所以我們要求的就是此題折線所在直線相交構成的一個底朝下的凸殼(類似二次函數a>0的樣

原创 POJ 2823 Sliding Window - dp&單調隊列優化

題目描述 想清楚兩件事: 1.當前區間前面的元素沒用 2.當前區間有了較小的元素,則以前較大的元素沒用,因爲當前用不到,以後更用不到。 #include<cstdio> #define MAXN 1000000 struct

原创 UESTC 1186 Gray code - 簡單數位dp

題目描述 題目大意: 給定一個長度爲 n 的僅包含’0’、’1’、’?’ 的字符串,你需要給所有的問號決定填 0 還是 1。 填完之後,將這個串看成二進制數,轉化成格雷碼。 如果格雷碼中第 i 個字符是 1,那麼你將獲得 a

原创 SPOJ 10606 Balanced Numbers - 數位dp

題目大意: 一個數被稱爲是平衡的數當且僅當對於所有出現過的數位, 偶數出現奇數次,奇數出現偶數次。 給定 A,B,請統計出 [A,B] 內所有平衡的數的個數。 1 ≤A≤B≤ 1018 。 分析: 是個數位dp。 (n)爲[

原创 FZU 1894 志願者選拔 - 單調隊列

題目描述 分析: 暴力肯定過不了。維護一個從大到小的單調隊列。 想清楚這些事: 1. 如果前面有人的val比當前加入隊伍的人的val小,那麼前面那個人的val永遠對答案沒有貢獻,可以刪去。 2. 再有就是要刪除出隊的人,但

原创 BZOJ 3679 數字之積 - 數位dp

題目描述 分析(From Claris): 考慮計算[1;R)內滿足條件的數的個數。 數字之積非常大,但是這些數字的質因子只可能是2、3、5、7。 所以設f(i;cnt2;cnt3;cnt5;cnt7;j)爲從高到低填了前i

原创 POJ 3250 Bad Hair Day - 單調隊列

題目描述 分析: 題目大意是求出每隻cow能看到的cow的總數的和 轉換爲: 每隻cow能被看到的次數總和 這樣就可以用單調隊列求解了。 對於每隻cow,刪掉隊列中height小於它的值,ans加上此時隊列的長度(就是這隻

原创 HDU 3415 Max Sum of Max-K-sub-sequence - dp&單調隊列優化

題目描述 分析: 環形要double轉換爲鏈狀,再跑dp 記dp[i]表示以 i 爲結尾的長度不超過k的最大連續子段和 dp[i]=max{sum[i]−sum[j]},i−k<=j<i 即: dp[i]=sum[i]−m

原创 專題——基礎遞推

漢諾塔問題 Hanoi塔由n個大小不同的圓盤和三根木柱a,b,c組成。開始時,這n個圓盤由大到小依次套在a柱上,如圖所示。 要求把a柱上n個圓盤按下述規則移到c柱上: (1)一次只能移一個圓盤; (2)圓盤只能在三個柱上存

原创 BZOJ 4292 [PA2015] Równanie - 數位&思維

題目大意: 對於一個正整數 n,定義 f(n) 爲它十進制下每一位數字的平方的和。 現在給定三個正整數 k,a,b,請求出滿足 a≤n≤b 且 k×f(n) = n 的 n 的個數。 1 ≤k,a,b≤ 1018 ,a≤b。

原创 HYSBZ/BZOJ 1013 [JSOI2008] 球形空間產生器sphere - 高斯約當消元

題目描述 分析: 根據題目給出的dist的定義,並設球心的座標爲(x1,x2,...xn ),列出n+1個方程。 step 1. n+1個方程的兩邊同時平方。 step 2. n+1個方程拆括號,化簡。 step 3. 前n