校門外的樹(增強版)

2022-05-01 06:06:11 字數 761 閱讀 7642

校門外馬路上本來從編號0到l,每一編號的位置都有1棵樹。有砍樹者每次從編號a到b處連續砍掉每1棵樹,就連樹苗也不放過(記 0 a b ,含a和b);幸運的是還有植樹者每次從編號c到d 中凡是空穴(樹被砍且還沒種上樹苗或樹苗又被砍掉)的地方都補種上樹苗(記 1 c d,含c和d);問最終校門外留下的樹苗多少棵?植樹者種上又被砍掉的樹苗有多少棵?

輸入格式:

第一行l和n,表示校園外原來有l+1棵樹,並有n次砍樹或種樹的操作。

以下n行,砍樹或植樹的標記和範圍,每行3個整數。

l(1 <= l <= 10000)和 n(1 <= n <= 100)

輸出格式:

共兩行。第1行校門外留下的樹苗數目,第2行種上又被拔掉的樹苗數目。

輸入樣例#1:

10 3

0 2 6

1 1 8

0 5 7

輸出樣例#1:32

**實現:

1 #include2

intl,n,a,b,c,fd,yx;

3int t[10010];4

intmain()

13else18}

19}20for(int i=0;i<=l;i++)

21if(t[i]==1) ++yx;

22 printf("

%d\n%d\n

",yx,fd);

23return0;

24 }

我能說我是在搜「線段樹」的題目找到的它嗎。

luogu1276 校門外的樹(增強版)

時空限制 1000ms 128mb 校門外馬路上本來從編號0到l,每一編號的位置都有1棵樹。有砍樹者每次從編號a到b處連續砍掉每1棵樹,就連樹苗也不放過 記 0 a b 含a和b 幸運的是還有植樹者每次從編號c到d 中凡是空穴 樹被砍且還沒種上樹苗或樹苗又被砍掉 的地方都補種上樹苗 記 1 c d,...

P1276 校門外的樹(增強版)

原題鏈結 考察 線段樹 or 模擬 模擬是很簡單啦,主要考慮線段樹怎麼寫,本題的線段樹比較特殊.思路 基本是參考了大佬的題解.本題的懶標記過於特殊把我寫懵了.操作 0 砍掉 l,r 區間的樹與樹苗 操作 1 種植 l,r 區間的樹苗.抽象到線段樹操作就是 0 l,r 區間 樹陣列 1,樹苗陣列 1....

題解 P1276 校門外的樹(增強版)

本蒟蒻重學線段樹,發現了這道題可以用線段樹做。雖然資料範圍很小可以直接暴力,但由於在練習線段樹所以打算用線段樹寫這道題。本題解針對已經有線段樹基礎的巨佬,不懂線段樹原理的話可以學習線段樹後再閱讀本題解。剛看題的時候以為大概是個線段樹模板,結果發現事情並不簡單。題目要求的不是剩下多少棵樹和砍掉了多少棵...