noip模擬賽 無題

2022-05-01 07:51:13 字數 1409 閱讀 2312

分析:這道題和以前做過的模擬賽題很像:傳送門.

對於前30%的資料可以直接暴力求,k=1的資料利用線段樹求區間最大值,沒有修改操作可以用主席樹.100%的資料主席樹是肯定用不了的,觀察到k非常小,可以用線段樹來暴力維護.

線段樹記錄每個區間內的第k小值(1≤k≤10),其它的操作沒啥變化,就是pushup的時候要把兩棵子樹的資訊給合併起來,用兩個指標就好了.

要維護的資訊特別少,並且可以用線段樹來維護的可以考慮用線段樹來暴力維護.

#include #include 

#include

#include

using

namespace

std;

const

int maxn = 100010

;struct

node

e[maxn

<< 2

];int n, m, tag[maxn << 2

];node hebing(node a, node b)

return

temp;

}void pushup(int

o)void color(int o, int

v)void pushdown(into)}

void build(int o, int l, int

r)

int mid = (l + r) >> 1

; build(o * 2

, l, mid);

build(o * 2 + 1, mid + 1

, r);

pushup(o);

}void update(int o, int l, int r, int x, int y, int

v) pushdown(o);

int mid = (l + r) >> 1

;

if (x <=mid)

update(o * 2

, l, mid, x, y, v);

if (y >mid)

update(o * 2 + 1, mid + 1

, r, x, y, v);

pushup(o);

}node query(

int o, int l, int r, int x, int

y)

if (y >mid)

return

temp;

}int

main()

else

update(

1, 1

, n, l, r, k);

}return0;

}

Noip模擬賽總結(無題面)T1

首先是第一道貪心題。果然是我貪心做的少了 首先我不該把多重復合的一次函式拆開,我應該把最裡面的解出來,然後迭代解,我拆開後,1是沒有什麼優美的性質,2是變得更複雜 然後t1就是類似國王遊戲這樣的,因為確實可以只考慮前後兩個係數間的關係 而他要求安排順序,又不能 啟發式 安排,只能說確定一種排序規則,...

自用 每次NOIP模擬賽的總結 (無題面)

我的最大缺點是思維混亂,特別是做數學題,變數的含義都搞混了 本來我設的x是 進行了x1次 a操作和x2次 b操作之後係數的和 然後有ax1 by1 n ax2 by2 m 每進行一次 a或 a,同時必須進行一次 b,b,b,b,b取正負和a取正負是無關的,就像馬走日 先走1步橫再走兩部豎 然後我竟然...

noip模擬賽 密碼

表示沒看懂演算法3 問題描述 有壓迫,就有反抗。mored的寵物在法庭的幫助下終於反抗了。作為乙隻聰明的寵物,他打算把魔法使mored的魔法書盜去,奪取mored的魔法能力。但mored怎麼會讓自己的魔法書輕易地被盜取?mored在魔法書上設定了乙個密碼鎖,密碼鎖上有乙個問題。施以斯臥鋪魔法吧,你有...