確定星星的等級
就是他左下方星星的數目
又因為星星本來就是從左下到右上輸出的。。。
所以直接搞就好。
其實就是輸入乙個數
求之前小於等於這個數的數量x
然後a[x]++;
然後統計a[x];
#include
#include
#include
#include
const
int maxn=35002;
const
int n=35002;
using
namespace
std;
/*確定星星的等級。
就是他左下方星星的數目。
*/int n;
int c[maxn];
int sum[maxn];
int a[maxn];
int lowbit(int x)
int update(int x)
}int getsum(int t)//得到小於等於x的數的和
return ans;
}int main()
for(int i=0;iprintf("%d\n",sum[i]);}}
return
0;}
POJ 2352 樹狀陣列(線段樹)
題意 給出n個點的座標 n 15000 座標範圍為 1,32000 最後讓你輸出ans i 表示有ans i 個點左下方有i個點。一開始直接寫的二維樹狀陣列,記錄乙個矩陣,如果 x,y 有點就是1,沒有點就是0,那麼我們可以輕易求出 1,1 到 x,y 共有多少點,不過這樣就爆了10倍記憶體。1k ...
poj2352 樹狀陣列 線段樹嘗試失敗
啊啊啊,剛學線段樹,用線段樹寫這題不斷的tle!我自己弄了15000個資料,秒算的,結果還是說我tle,搞了2個小時沒看出 能超時 然後用之前學的樹狀。十分鐘就搞定了,兩種 都先放這裡,線段樹那個以後再拿出來看看 tle 樹狀陣列解法 include includeusing namespace s...
poj 2352 樹狀陣列
這道題好像被賤做了,看起來像二維的樹狀陣列,其實只是一維的,可能是資料太大了,矩陣開不那麼大,因為題意是求乙個矩陣中做它左下部分的個數,而去輸入的順序是按y公升序,後x公升序輸入。其實如果不按這個順序可以下排序。然後就是一維的樹狀陣列的思路了。轉個圖,可以知道它的這陣列性質了 include inc...