樹狀陣列 洛谷 P3616 富金森林公園

2021-07-27 20:44:46 字數 1159 閱讀 9793

達成成就 noip題想不出!

我是怎麼做到想去寫cdq分治加並查集的 還寫不出來

資料結構學傻系列

其實是noip題

這樣的話高度一樣怎麼辦 我們把乙個高度放大成乙個高度區間就可以避免有相同數字了

#include

#include

#include

using

namespace

std;

inline

char nc()

inline

void read(int &x)

const

int n=400005;

int c[n],maxn;

inline

void init(int n)

inline

void add(int x,int r)

inline

int sum(int x)

int sx[n],icnt;

int fat[n];

inline

int fat(int u)

inline

int bin(int x)

struct eventeve[n];

int n,m,h[n];

inline

bool peak(int i)

inline

bool vall(int i)

inline

void add(int i)

inline

void del(int i)

int main()

sort(sx+1,sx+icnt+1);

for (int i=1;i<=icnt+1;i++) fat[i]=i;

init(icnt);

for (int i=0;i<=n+1;i++) h[i]=bin(h[i]);

for (int i=0;i<=n+1;i++) add(i);

for (int i=1;i<=m;i++)

if (eve[i].f==1)else

return

0;}

洛谷 P3616 富金森林公園 樹狀陣列

傳送門 維護乙個山脈,單點修改,查詢有多少山峰高出水面 我是沙茶沙茶題都不會做只想到無修改可以用掃瞄線 答案就是所有比水面高的 相鄰都比水面高的啊 因為沒有區間詢問寫個 bit 都可以 有區間詢問?可以考慮主席樹吧 include include include include using name...

洛谷 P3616 富金森林公園題解(樹狀陣列)

題目描述 博艾的富金森林公園裡有乙個長長的富金山脈,山脈是由一塊塊巨石並列構成的,編號從1到n。每乙個巨石有乙個海拔高度。而這個山脈又在乙個盆地中,盆地裡可能會積水,積水也有乙個海拔高度,所有嚴格低於這個海拔高度的巨石,就會在水面下隱藏。由於地殼運動,巨石的海拔高度可能會隨時變化,每次一塊的巨石會變...

洛谷P3616 富金森林公園

博艾的富金森林公園裡有乙個長長的富金山脈,山脈是由一塊塊巨石並列構成的,編號從1到n。每乙個巨石有乙個海拔高度。而這個山脈又在乙個盆地中,盆地裡可能會積水,積水也有乙個海拔高度,所有嚴格低於這個海拔高度的巨石,就會在水面下隱藏。由於地殼運動,巨石的海拔高度可能會隨時變化,每次一塊的巨石會變成新的海拔...