1. 程式人生 > >洛谷暑期課期末考試

洛谷暑期課期末考試

長度 dfs 每次 方便 給定 答案 如何 一個點 技術

有點舍不得。。

dwj的聲音真好聽/// (逃
倉鼠的聲音也好好聽/// (轉頭又逃

T1

給定長度為n的序列A和B,定義序列Ci = max{A1, A2, A3, ... Ai}
並定義當前價值為 min(B1, C1) * min(B2, C2) * ... * min(Bn, Cn)
如果opt=0 表示對序列 A 操作,如果 opt=1 則是對序列 B 操作,
把序列中第 x 個元素變成 y ,保證 y 不小於原來的元素
答案對1e9 + 7取膜

我的想法 :
很明顯要給C建單調棧
每次修改A只用考慮x後邊的序列就行
如果找位置的話二分查找就行
但修改的話。。。平衡樹吧
修改B更方便
但是連乘積如何統計?

好麻煩 過

正解
好像到平衡樹那裏都沒問題
然後連乘是。。。二位偏序?!

T2

題意:
技術分享圖片

我的想法:
看到“到各個點距離相等”
想到數軸上的類似問題 -> 取中位數
那麽樹上。。。重心咯
計算路徑長度的話 lca + 差分
找根。。沒時間了 暴力吧

然鵝
就死在找根的暴力上了

正解:
然後考慮到進來一個點 它會影響從自己到根的size(都加一
所以每次插一個點 重新心只會在原重心與新點的路徑上
所以二分那條路徑【dfs序 找重心就行了

T3

求有多少個n個節點的基環樹

我的想法:
懵 什麽鬼

正解:
【然鵝並沒有懂】
基環樹的性質 : 存在剛好兩種點和邊一一匹配的方案
如果dp的話

f( n ) 表示n個點的連通圖 每個圖點和邊一一匹配的方案數之和
g( n )表示n個點的圖 每個圖點和邊一一匹配的方案數之和
【倉鼠哥哥說這是套路 orz
顯然 g(n) = (n - 1) ^ n
用g( n ) 算 f( n ) 可以考慮容斥
枚舉1號點所在的連通塊
f(n) = \sum_{i = 2}^{n - 1}(f(i) * g(n - i) * (C_(i - 1)^(n - 1)))
【倉鼠哥哥說這是套路 orz

技術分享圖片

【倉鼠哥哥說這是套路 orz
於是神仙操作NTT
(分治,合並時用NTT

這次模擬考【第一次哎!
遲到了半小時【平時都是8點半嘛qvq
考試的時候也幾乎被自己的菜蠢死

嗯 就是比較妄自菲薄 這種心態並不好
然後就是不那麽認真 總有種恐懼心理
希望以後能多參加模擬賽吧
p.s.考完了發現 思維上還過得去?
就是數學太垃圾

然後 暑期課完結撒花



QwQ



舍不得



好矯情///。。。

洛谷暑期課期末考試