考慮每次是在區間[l,r]中埋一種,所以記錄每次的左右端點,查詢一段區間[l,r]就是統計1~r中埋了多少雷,再減去1~l-1中埋完的雷(即右端點)即可。
所以用兩個樹狀陣列維護左右端點資訊即可。(常數比線段樹要小)
#includeusing namespace std;
const int maxn=1e6+10;
const int mod=1e6;
int n,q;
int tr1[maxn],tr2[maxn];
int read()
int lowbit(int x)
void update(int x,int y,int v)
int query(int x,int y)
int main()
return 0;
}
luogu2184 貪婪大陸(樹狀陣列)
我是超連結 這道題看著好眼熟啊 看上去很複雜,實際上就是樹狀陣列的基本操作 單點修改區間查詢 單點新增值,查詢時兩個區間相減就ok,但這個題是1為左區間,所以不用減 原因?答案實際上就是 1,r 的左端點數 1,l 1 的右端點數 include using namespace std int n,...
luogu 2184 貪婪大陸 樹狀陣列
面對螞蟻們的瘋狂進攻,小ff的tower defence宣告失敗 人類被螞蟻們逼到了greed island上的乙個海灣。現在,小ff的後方是一望無際的大海,前方是變異了的超級螞蟻。小ff還有大好前程,他可不想命喪於此,於是他派遣手下最後一批改造scv布置地雷以阻擋螞蟻們的進攻。小ff最後一道防線是...
貪婪大陸(洛谷P2184)
題目背景 面對螞蟻們的瘋狂進攻,小ff的tower defence宣告失敗 人類被螞蟻們逼到了greed island上的乙個海灣。現在,小ff的後方是一望無際的大海,前方是變異了的超級螞蟻。小ff還有大好前程,他可不想命喪於此,於是他派遣手下最後一批改造scv布置地雷以阻擋螞蟻們的進攻。題目描述 ...