兩道小題 線段樹 隨機化

2021-10-09 08:51:53 字數 938 閱讀 7718

退役了,想起了在役做過的兩道精妙的小題,溜回機房寫題解/kel

題意:給定長度為n的序列b_i,初始c為0,順序i為1~n執行 c=max(0,min(max,c+b_i)),max會更改,b_i會更改,c更不更改無所謂,每次更改後求出c執行後的值,權值範圍都是-1e9~1e9,長度和運算元5e5級別

考慮給定c和線段樹上的乙個區間[l,r],我們判斷c經過l,r後變成什麼

取出[mid+1,r],判斷0和max經過後是否會變成同乙個數,很好判斷

如果會變成同乙個數,直接隨便乙個數進入[mid+1,r],畢竟沒影響

如果不會,那麼對於[mid+1,r],我們很好求出每個數經過它後會變成什麼

只要維護好最值子段和,字首和,字尾和即可,於是這時進入[l,mid]

這個做法也可以在log的時間內求出經過序列的任意乙個區間後會變成什麼

時間複雜度:o(m

log2

n)

o(mlog_2n)

o(mlog

2​n)

給出n*n的矩陣,對於子矩形(a,b)-(c,d),定義周長為2(b-a+1)+2(d-c+1),面積為其中ai,j的和,問面積比周長的最大值,n<=500,權值1e9級別

實際實現的時候要用long double,要不精度不太夠?

固定a,b很好求答案,二分即可

如果我們對所有(a,b)對random_shuffle,當且僅當當前答案大於之前答案才進行二分求當前答案

那麼複雜度:o(n

3+ln

(n2)

∗log

ans∗

n)

o(n^3+ln(n^2)*logans*n)

o(n3+l

n(n2

)∗lo

gans

∗n)

無線感測器和無線個域網兩道小題

1 無線感測器網路在什麼背景下產生,具有什麼現實意義?且wsn的特點和網路結構有哪些 微電子學領域的微機電系統對智慧型感測器技術的發展起著支撐作用,其包含了微型機構 微型感測器 微型執行器 微型訊號處理和控制電路 微型介面 微型通訊 微型電源等部件。在微電子技術 嵌入式計算技術和通訊技術的發展和支撐...

演算法導論裡關於隨機演算法的兩道題

1.random a,b 方法返回乙個介於a與b之間的整數,每個整數出現的機會相等。描述random a,b 的一種實現,它只呼叫random 0,1 設方法random01 以等概率返回0或1 int random int a,int b int d 對每一位分別呼叫random01 do whi...

二叉搜尋樹的隨機化插入和伸展插入操作(平攤法)

原始碼例如以下 include include define key int define hl h l define hr h r define hlr h l r define hll h l l define hrr h r r define hrl h r l typedef int key...