NYOJ123 士兵殺敵(四)

2021-06-13 21:48:46 字數 528 閱讀 4293

#includeconst int n = 1000002;

struct tree

;tree tree[n<<2];

void build(int root, int l, int r)

}void insert(int root, int b, int e, int v)

int m = (tree[root].left + tree[root].right)>>1;

//[b,e]位於root的左半區間

if(e <= m)

insert(root<<1, b, e, v);

else if(b > m)//[b,e]位於root的右半區間

insert(root<<1|1, b, e, v);

else//[b,e]與兩個區間都相交 }

int query(int root, int x)

int main()

else

}} return 0;

}

NYOJ 123士兵殺敵(四)

時間限制 2000 ms 記憶體限制 65535 kb 難度 5 描述 南將軍麾下有百萬精兵,現已知共有m個士兵,編號為1 m,每次有任務的時候,總會有一批編號連在一起人請戰 編號相近的人經常在一塊,相互之間比較熟悉 最終他們獲得的軍功,也將會平分到每個人身上,這樣,有時候,計算他們中的哪乙個人到底...

nyoj 123 士兵殺敵 四

描述 南將軍麾下有百萬精兵,現已知共有m個士兵,編號為1 m,每次有任務的時候,總會有一批編號連在一起人請戰 編號相近的人經常在一塊,相互之間比較熟悉 最終他們獲得的軍功,也將會平分到每個人身上,這樣,有時候,計算他們中的哪乙個人到底有多少軍功就是乙個比較困難的事情,軍師小工的任務就是在南將軍詢問他...

nyoj123 士兵殺敵(四)

描述南將軍麾下有百萬精兵,現已知共有m個士兵,編號為1 m,每次有任務的時候,總會有一批編號連在一起人請戰 編號相近的人經常在一塊,相互之間比較熟悉 最終他們獲得的軍功,也將會平分到每個人身上,這樣,有時候,計算他們中的哪乙個人到底有多少軍功就是乙個比較困難的事情,軍師小工的任務就是在南將軍詢問他某...