bzoj5127 Lydsy12月賽 資料校驗

2022-04-29 21:39:10 字數 675 閱讀 4426

多少年不寫題解了

題目描述:

著名出題人小 q 出了一道題,這個題給定乙個正整數序列 a1, a2, ..., an,並保證輸入資料中,對於

a 的任意乙個非空連續子區間 [l, r],該區間內出現過的數值在整數上值域連續。

現在小 q 生成了乙個長度為 n 的序列 b1, b2, ..., bn,他發現資料生成器似乎並不能保證資料合法,

因此希望從中擷取一段連續子區間作為測試資料。

小 q 選定了其中 m 個連續子區間 [l, r],請寫乙個程式,對於每個區間判斷該區間是否滿足條件。

n,m<=1e5

sb題....然而我看偏了搞出來乙個log,寫著寫著發現自己傻了....

合法的區間中所有長度為2的區間必然滿足條件,所以相鄰兩個數字之差的絕對值必然滿足條件.顯然滿足這個條件那麼所有子區間都滿足條件.

字首和一波判斷一下就完了.o(n+m).

#includeconst int maxn=500005;

int b[maxn];

int d[maxn];

int main()

for(int i=1;ifor(int i=1;i} for(int i=1;ifor(int i=1,l,r;i<=m;++i)

return 0;

}

bzoj4919 Lydsy1706月賽 大根堆

給定一棵n個節點的有根樹,編號依次為1到n,其中1號點為根節點。每個點有乙個權值v i。你需要將這棵樹轉化成乙個大根堆。確切地說,你需要選擇盡可能多的節點,滿足大根堆的性質 對於任意兩個點i,j,如果i在樹上是j的祖先,那麼v i v j。請計算可選的最多的點數,注意這些點不必形成這棵樹的乙個連通子...

BZOJ4919 Lydsy六月月賽 大根堆

題解 我覺得資料結構寫成結構體還是有必要的 因為不然一道題裡出現了兩個相同的資料結構由於名字很像很容易出錯 另外初始化用segmenttree 首先裸的dp很好想 f i j 表示在i點,最大值 j的點數最大值 看了別人的題解知道了可以用線段樹合併來優化這個東西。我們考慮對於每個點,首先我們要合併它...

BZOJ2709 Violet 1 迷宮花園

這題是許可權題,版權問題不放題意,我來簡要的說一下 給出乙個迷宮,有起始點終點,可以上下左右走,移動的耗時是1,可以改變上下走的耗時為v,給出乙個總耗時l,問在總耗時中的v是多少 顯然這題可以先二分答案v然後跑寬搜或者spfa來判斷,還是蠻簡單的。這題的難點就在於,看到v的範圍很小 0 v 10 就...