HDU4000 Fruit Ninja(樹狀陣列)

2021-06-22 01:08:21 字數 837 閱讀 2288

嗯……這題是個標題黨……【媽蛋其實大部分題目都是標題黨啊我發現。。。

一開始不會做,即便empty大神提示說這是個樹狀陣列的題目……給empty大人丟臉了……【事後empty大神狠狠得指責了我。。。

嗯……說正事,這題得求和……

求出某個數之後的,比它大的數的個數n,這樣形成的組合就是c(n,2),然後再減去三個順次增大的,就得到要求的那種x

然後是怎麼求那個n , 嗯……樹狀陣列,求出在他之前比它小的,

runid

user

problem

result

memory

time

language

length

submit time

2248124

congjiujiu

daccept

688kb

359ms

g++732b

2014-05-13 19:43:30

**:

#include #include #include using namespace std;

int a, n, c[100001];

long long ans, tmp, tmp1;

int lowbit(int x)

void update(int i)

}int sum(int i)

return s;

}int main()

ans %=100000007;

printf("case #%d: %i64d\n", cnt++, ans);

} return 0;

}

hdu 4000 樹狀陣列

題意大致為 給乙個1 n的序列,求有序數對 x,y,z 其中x通過樹狀陣列可以得到a i 的後面含有的大於a i 的數的個數,假設個數為high,那麼有序數對 x,y,z 其中 x對於乙個數y,x include include using namespace std define mod 1000...

hdu4000樹狀陣列

給出n個數,求所有的i 題目也就是讓最後那個數第二大。我們輸入第i個數字a,那麼我們用的樹狀陣列存的就是sum a 1 sum a 1 表示在a這個位置,在前i 1個數中,有sum a 1 個數比a小,那麼我們就可以求出在後面的 i 1,n 的序列中,有r n a i 1 sum a 1 個數比a要...

HDU 4000 樹狀陣列

題目大意 給出n個數,求 x 解題思路 題目資料量很大,暴力肯定不行的。設現在出現的位置為x,後面比它大的數有s個。s個選兩個 y,z 有s s 1 2種。此時yz無序。然後按題目要求x 1 include 2 include 3 include 4 include 5 using namespac...