原创 P3206 [HNOI2010]城市建設
P3206 [HNOI2010]城市建設 題目描述 無向圖上修改邊權,動態維護MSTMSTMST,求每次修改後的MST的權值和。 Solution 有一個簡單好想的做法——LCTLCTLCT+線段樹分治。 考慮每次加邊,若形成了一
原创 P5395 【模板】第二類斯特林數·行
P5395 【模板】第二類斯特林數·行 題目描述 Solution 這題是[Tjoi2016&Heoi2016]求和的前置技能啊…… 我似乎直接跳過這題,去做應用了QAQQAQQAQ。 Code #include <vector>
原创 CF605C. Freelancer's Dreams
CF605C. Freelancer’s Dreams 題目描述 Solution 實際上就是給定ai,bi,A,Ba_i,b_i,A,Bai,bi,A,B,求n維向量(x1..xn)(x1..x_n)(x1..xn),使得
原创 HUD4035Maze
HUD4035Maze 題目描述 Solution 很容易寫出期望的式子: 令fif_ifi表示從iii號節點開始期望幾步走出迷宮。 令pi=1−ki−eip_i=1-k_i-e_ipi=1−ki−ei表示選擇走向其他邊的
原创 [JLOI2016]成績比較
[JLOI2016]成績比較 題目描述 Solution 考慮dpdpdp。 令fi,jf_{i,j}fi,j表示前iii個科目中有jjj個人被碾壓的方案數。 轉移顯然爲: fi,j=∑k≥jfi−1,k∗(kj)∗(n−k−1
原创 [BZOJ2616] SPOJ PERIODNI
[BZOJ2616] SPOJ PERIODNI 題目描述 Solution 這題有個高大上的名字——笛卡爾樹DPDPDP。 然而其實就是一個簡單的區間DP而已。 設fl,r,jf_{l,r,j}fl,r,j表示當前要求的區間爲
原创 HDU4372 Count the Buildings
HDU4372 Count the Buildings 題目描述 Solution 思路很妙。 考慮從最高的一個樓房將序列分開,左邊可以看到FFF個,右邊可以看到BBB個,一個樓房可以被看到,則一定是其之前沒有比它高的樓房,其之後
原创 CF1028F. Make Symmetrical
CF1028F. Make Symmetrical 題目描述 Solution 結論1:兩個點(x1,y1),(x2,y2)(x_1,y_1),(x_2,y_2)(x1,y1),(x2,y2)關於(0,0),(x3,y3)
原创 CF1004F Sonya and Bitwise OR
CF1004F Sonya and Bitwise OR Solution 感覺比較套路。 序列的前綴ororor有一個性質:最多變換logloglog次。 所以直接建一個線段樹,每個區間對於前綴、後綴分別存下O(log)O(lo
原创 CF908G. New Year and Original Order
CF908G. New Year and Original Order Solution 對於一個數xxx,它的貢獻爲排序之後的值,例如:S(50394)=3459=3∗103+4∗102+5∗101+9S(50394)=3459
原创 LuoguP5366 [SNOI2017]遺失的答案
LuoguP5366 [SNOI2017]遺失的答案 題目描述 Solution 可以先簡化問題,特判LLL不是GGG倍數的情況。 然後令n=⌊nG⌋n=\lfloor \frac{n}{G} \rfloorn=⌊Gn⌋,L=⌊
原创 LOJ#2542. 「PKUWC2018」隨機遊走
LOJ#2542. 「PKUWC2018」隨機遊走 題目描述 Solution 去過一個點集中所有節點的期望時間不好求,考慮min−maxmin-maxmin−max容斥,轉化爲求第一次到達某一個點集的期望時間。 我們對於每一個點
原创 P3978 [TJOI2015]概率論
P3978 [TJOI2015]概率論 題目描述 Solution 設CnC_nCn表示nnn個節點的樹的個數(卡特蘭數),SnS_nSn表示nnn個節點的所有樹的葉子的個數和。 Cn=∑i=0n−1CiCn−i−1+[n==
原创 圓方樹
圓方樹 單純貼個板子。。。 https://loj.ac/problem/2587 #include <vector> #include <list> #include <map> #include <set> #include <de
原创 AGC026E - Synchronized Subsequence
AGC026E - Synchronized Subsequence 題目描述 Solution 定義cnt[x][0],cnt[x][1]cnt[x][0],cnt[x][1]cnt[x][0],cnt[x][1]表示在前xxx