ACM 10月1日週日週末訓練心得

2021-08-08 22:39:18 字數 437 閱讀 7953

由於我們讀入該掃瞄線後sum[1]的覆蓋值少了5,但是此時我們看圖知道其實這個矩形的另一條上邊了.所以我們不能用ans+=sum[1]了,我要執行ans+=abs(last-sum[1]),其中last是上一輪讀入掃瞄線後sum[1]的值。

void pushup(int i,int l,int r)  

else if(l==r)

numseg[i]=pre[i]=suf[i]=sum[i]=0;

else

} void update(int ql,int qr,int v,int i,int l,int r)

int m=l+(r-l)/2;

if(ql<=m) update(ql,qr,v,lson);

if(mpushup(i,l,r);

}

ACM 9月3日週日週末訓練心得

今天老師發了新的專題,是線段樹的,今天就用空餘的時間看了看前輩的部落格,了解了一下線段樹的內容,發現樹狀陣列能解決的問題線段樹基本都能解決,線段樹的用法與樹狀陣列的用法似乎有些相似,但是線段樹能維護一段區間的值,不像樹狀陣列,改變乙個地方的值就會整體更新,線段樹有時候就比樹狀陣列好用了 線段樹需要維...

ACM 11月19日週日週末訓練心得

這週看了樹形dp的一些部落格,比如一道compuer的題目要去求樹上每個點的最遠距離是多少,這題一直被稱為樹形dp的經典是有它的道理的,因為樹dp就是把dp放到樹上做了,一般是從上到下或從下到上 利用回溯 的移轉狀態而這題很合適的需要兩次dfs。對於 有向 dp u 0 表示在u的子樹下u的最遠距離...

ACM 11月26日週日週末訓練心得

這週末關於樹形dp的專題已經結束了,需要對這個專題進行一下總結,就我做的這些題進行一下總結。樹形dp就是根據問題的描述,問題裡的東西與樹一樣擁有子節點和父節點的關係,而做一些對於這些資訊的檢索以及尋找一些問題所需要的答案則需要尋找一些狀態變化和轉移。選擇一些對樹形dp印象比較深刻的題目進行思考。a這...