原创 atcoder:Tokio Marine & Nichido Fire Insurance Programming Contest 2020:E - O(rand)(位運算+二項式反演)

題目大意:從 N 個數字中選 1 到 k 個,使得這些數字的與運算結果爲 s, 或運算結果爲 t,爲有多少種選擇方案。 首先我們只關注 集合a 中滿足 (x & s) == s && (x & t) == x 的元素 x,稱這

原创 bzoj 3601: 一個人的數論(莫比烏斯反演 + 高斯消元 + 積性函數)

題目要求的是 f(n,d)=∑i=1n[gcd(i,n)=1]idf(n,d) = \displaystyle\sum_{i = 1}^n[gcd(i,n) = 1]i^df(n,d)=i=1∑n​[gcd(i,n)=1]id

原创 SP2939 QTREE5 - Query on a tree V(動態點分治 | LCT維護虛子樹)

洛谷鏈接 動態點分治做法: 基本上和 bzoj1095: [ZJOI2007]Hide 捉迷藏 類似的做法。 考慮每個點維護兩個 set,第一個 set 維護每個重心的子樹到它的父節點的最小距離,第二個 set 維護每個重心的

原创 P5017 擺渡車(斜率優化dp + 細節)

由於 t 並不大,考慮以 t 爲狀態進行 dp。(這題有 O(n∗m)O(n*m)O(n∗m) 的優秀dp做法,這裏只爲了練習斜率優化dp) 維護 cnt[i] 表示前 i 時刻的人數,sum[i] 表示前 i 時刻所有人的

原创 2019 南昌區域賽 M. XOR Sum(拉格朗日插值(模板糾正))

很明顯 f(i,k)f(i,k)f(i,k) 是有規律的,因爲連續的數字異或,連續的兩項異或得到一,打表可以發現: k = 1 k = 2 k = 3 根據 k 的奇偶以及 i % 4 的餘數進行分類討論,當 i % 4

原创 P4072 [SDOI2016]征途(斜率優化 dp + 細節)

設序列 a1,a2,a3,a4,...,ana_1,a_2,a_3,a_4,...,a_na1​,a2​,a3​,a4​,...,an​ 的平均值爲 xxx,權值和爲 tottottot,方差 S=∑i=1n(ai−x)2nS

原创 bzoj 4515. [Sdoi2016]遊戲(樹鏈剖分 + 李超線段樹(真·模板) + 李超樹維護區間最小值)

洛谷鏈接 樹剖一下,直觀上來看,是要在樹上對一條鏈維護一段等差數列。如果維護的是區間和,每次在一段區間加上一段等差數列,這個可以直接在線段樹上做不依賴任何科技,但這題的查詢形式是最小值,直接做很難打標記進行維護。 將等差數列視

原创 bzoj 4609 [Wf2016]Branch Assignment(dp 凸優化(wqs二分)| 決策單調性優化)

實際上給的單向邊而不是雙向邊,先處理出每個點到 b+1b + 1b+1 的最短距離 dad_ada​,b+1b + 1b+1 到每個點的最短距離 dbd_bdb​。 預處理權值 s=da+dbs = d_a + d_bs=da

原创 牛客挑戰賽 38 D.突擊檢查(期望 + 思維)

官方題解: 代碼: #include<bits/stdc++.h> using namespace std; const int maxn = 2e6 + 10; const int mod = 998244353; ty

原创 牛客挑戰賽 38 C.圓桌聚餐(條件概率,貝葉斯公式,期望 dp,思維)

官方題解: 補充這個dp轉移的 概率係數 p(n−2)∗p+(n−4)∗q\displaystyle\frac{p}{(n - 2) * p + (n - 4) * q}(n−2)∗p+(n−4)∗qp​ 是如何求出的: 由

原创 bzoj 4700. 適者(李超線段樹 + 思維)

先不考慮秒殺兩臺機器的情況,要使得損失最小。處理出每個兵器能抗 t[i]=⌊di−1ATK⌋+1t[i] = \lfloor\frac{d_i - 1}{ATK}\rfloor +1t[i]=⌊ATKdi​−1​⌋+1 刀。

原创 codeforce 1332 F. Independent Set(樹形 dp,樹上計數問題)

題目大意:給一棵樹,求這棵樹的所有邊生成子圖的所有獨立集數,邊生成子圖的定義爲:原圖拿條0條或多條邊並刪掉孤立點(沒有和其它點連邊的點)的圖。 寫過的爲數不多的樹上計數問題: 我的做法將狀態分爲五種:dp[u][0/1]

原创 codeforce 1326 E. Bombs(思維 + 線段樹)

答案具有單調性,ansi−1≥ansians_{i - 1} \geq ans_{i}ansi−1​≥ansi​,考慮枚舉 xxx,判斷 ansi<xans_i < xansi​<x 是否成立。 若 ansi<xans_i <

原创 atcoder abc 159:F - Knapsack for All Segments(思維 + 貢獻 + dp)

有一個 n3n^3n3 的樸素做法,對每個區間 進行 dp,顯然是通過不了的,且轉移複雜度爲 O(1),沒有優化的空間,得考慮從其它角度切入這題。 對於某個解,最左邊的數字的下標爲 xxx,最右邊的數字的下標爲 yyy,這組解

原创 Codeforce 739 E.Gosha is hunting(費用流 | 期望dp + wqs二分套wqs二分優化)

題目大意:有 n 個神奇寶貝,有 aaa 個普通球和 bbb 個超級球,對沒只神奇寶貝,使用普通球有 p[i]p[i]p[i] 的概率抓獲,使用超級球有 q[i]q[i]q[i] 的概率抓獲,普通球和超級球對每個神奇寶貝只能用