原创 2019 CSP-S Ⅱ 遊記

day0(試機) 第零天,重新打了一遍頭文件和讀優,熟悉了一下就匆匆走了。 day1 T1一看到先把二分打了,然後發現long long要爆,好慌 主要是基礎知識不夠紮實,不知道unsigned long long 是 2^64 - 1

原创 [CSP day1T3]樹上的數

題面 題解 這道題由於是求字典序最小的,所以要貪心地枚舉數字,然後找可以走到的編號最小的點,處理這條路徑。 這條路徑有一些特性。 以下是特別精煉的結論:    所以一旦選好了路徑,這些邊的先後順序就被定死了,後面的路徑肯定不能與他衝

原创 項鍊工廠 - 平衡樹

題面  題解 一道平衡樹的複雜細節題。我用的非旋Treap R k     把整棵樹從中間n - k - 1後面分開,再倒轉順序合併 F        把2~n翻轉過來,用懶標記 S i j    使i < j 相當於revolve(i

原创 CF915G Coprime Arrays (莫比烏斯反演)

CF915G Coprime Arrays 題解 (看了好半天終於看懂了) 我們先對於每一個i想,那麼 我們設 我們用莫比烏斯反演   有了這個式子,可比可以求出△ans呢?我們注意到,由於那個(i/d)是下取整了的,所以i+

原创 JOIOI王國 - 二分+貪心

題面 題解 通過一句經典的話“最大值的最小值” 我判斷它是二分題, 不難發現,整個圖形中兩個省的分界線是一條單調不遞減或單調不遞增的折線。 而且,越到後來它的最大值只會越來越大,最小值只會越來越小,極差只會越來越大。 所以如果我們把an

原创 [BZOJ3625][CF438E]小朋友和二叉樹 (多項式開根,求逆)

題面 題解 設多項式的第a項爲權值和爲a的二叉樹個數,多項式的第a項表示是否爲真,即 則,所以F是三個多項式的卷積,其中包括自己: ,1是F的常數項,即。 我們發現這是一個一元二次方程,可以求出,因爲g的常數項爲零,所以1-4g的常數項

原创 函數 - 貪心

題面 題解 其實就是一個貪心,可以用優先隊列之類的實時存下一步的最小方案。 但我由於沒有仔細讀題而爆零了。 #include<cstdio> #include<cstring> #include<iostream> #includ

原创 hihoCoder 1387 A Research on "The Hundred Family Surnames"

題面 描述 The Hundred Family Surnames is a classic Chinese text composed of common Chinese surnames. The book was composed

原创 CSP-S 2019 格雷碼

題面    題解  這道題,它都把格雷碼的計算方法告訴我們了,所以真的只是個模擬題, 兩種解法:①long long從負數存,要特判 #include<cstdio> #include<iostream> #include<cstr

原创 「SHOI2014」概率充電器

題面 n <= 500000   0<= p,qi <= 100 題解  這是道概率樹形DP題,但是很難推怎麼用加法原理和乘法原理正向求每個點被充電的概率,所以我們求每個點不被充電的概率。 我們發現求不被充電的概率很好求。 dp[x][

原创 JZOJ3542冒泡排序

題面 下面是一段實現冒泡排序算法的C++代碼: for (int i=1;i<=n-1;i++)  for (int j=1;j<=n-i ;j++)  if(a[j]>a[j+1]) 

原创 [HDU3976]Electric resistance(電阻)(信競&物競)(高斯消元)

題面 Problem Description Now give you a circuit who has n nodes (marked from 1 to n) , please tell abcdxyzk the equivalen

原创 CSP-S 2019 括號樹

 題面    題解 下面的抑或可以先不管他,我們只要O(n)求出每個ki然後算就是了。 直接求合法串數比較麻煩,我們先固定右端點討論。 如果右端點是“(”那麼答案數是零。 如果是“)”,那麼有兩種情況, ①  (A) ②  A1 A

原创 Queue-jumpers - 平衡樹

題面 Ponyo and Garfield are waiting outside the box-office for their favorite movie. Because queuing is so boring, that t

原创 Crash的數字表格 (莫比烏斯反演)

Crash的數字表格 Description 今天的數學課上,Crash小朋友學習了最小公倍數(Least Common Multiple)。對於兩個正整數a和b,LCM(a, b)表示能同時被a和b整除的最小正整數。例如,LCM(6,