傳送門:hdu 1541
給定一組點,用座標表示,求各個層次的點的數量, 每個點層次指的是其它點中x,y座標均不大於當前點x,y座標點的數量
注意題目給出, 所有輸入對於y來說都是不降序, 所以只要考慮x就可以了, y不增的時候x自增, 所以後輸入的點不會影響先輸入點的層次因為計算層次的時候要排除自身, 所以要先更新當前點的層次再更新樹狀陣列
#include
#include
#include
using
namespace
std;
#define lowbit(x) (x & (-x))
#define ll long long
#define debug 0
const
int maxn(500005);
int ans[15003], c[32003];
int n;
void add(int id, int v)
}int getsum(int id)
return res;
}int main()
for (int i = 0; i < n; i++)
}return
0;}
樹狀陣列hdu1541
題意 大概就是計算每顆星星左下邊包括了多少顆星星,這個數值就是level。左下邊不包括本身,不超過本身的x,y的座標,可以等於。問每種level有多少顆星星。思路 1.每次輸入乙個座標對之後,都要計算一下這個它的level。2.此題的x座標可以為0,而樹狀陣列是從1開始的,所以處理的時候對每個x座標...
hdu1541 樹狀陣列
題意 給你n個星星 1 n 15000 和每個星星的座標x,y 0 x,y 32000 每個座標不相同,且給出的座標是按列序公升序排列,列序相同則按行序公升序排列。定義星星的等級是該星星左下角的星星個數 包括正下和正右 最後要你輸出等級從0到n的星星個數。題解因為按給出的座標的規則,前面的點一定在後...
HDU1541 經典樹狀陣列
hdu1541 題意 如圖,等級為0的點有1,等級為1得點有4,2 等級為2的點有3,等級為3的點有5 即即左下角的點的個數 現給你一些點 x,y 輸入順序按y公升序,y相等時按x公升序排列 請分別輸出等級0 n 1的點的個數 分析 暴力超時tel,用g 提交也超時 include include ...