lost cow
問題描述:一共n頭奶牛編號從1到n,現在它們的排列順序發生了錯亂,對於每頭奶牛,你只知道排在它前面並且編號小於它的奶牛數量。
輸入第1行:單個整數,n ,表示奶牛的總數
之後n-1行:第k行描述了排在第k+1頭奶牛之前並且編號小於該奶牛編號的奶牛數量。當然,沒有奶牛排在第一頭牛的前面,所以沒有考慮它。
樣例輸入51
210樣例輸出24
531
#include #include using namespace std;
struct tree
;void buildtree(tree* root)
int quary(tree* root,int k)
int main()
; for (int i = 2; i <= n; i++)
tree* root = new tree;
root->l = 1;
root->r = n;
root->len = n;
root->left = new tree;
root->right = new tree;
buildtree(root);
for (int i = n; i >= 1; i--)
for (int i = 1; i <= n; i++)
cout << c[i] << endl;
return 0;
}
數算實習 k th number 線段樹
k th number 給定數列a1,a2 an,各不相同。要進行m次查詢,每次查詢 a l r 中第k小的數是什麼 1 n 100 000,1 m 5 000 abs ai 10 9 樣例輸入 7 3 7個數,3次查詢 1 5 2 6 3 7 4 2 5 3 4 4 1 1 7 3 樣例輸出56 ...
數算實習 Mobile phones 樹狀陣列
mobile phones 描述假設某地區的 移動 基站可以接收手機訊號。該區域為正方形,形成乙個s s大小的矩陣,行和列的編號從0到s 1。每個方塊包含乙個基站。手機內的有源手機數量可能會發生變化,因為手機從可以在方塊間任意移動或開機關機。編寫乙個程式,接收這些報告並回答任何矩形區域中當前活動手機...
數算實習 apple tree 樹狀陣列
輸入 第一行包含乙個整數n n 100,000 這是樹中的樹杈的數量。以下n 1行每個包含兩個整數u和v,這意味著樹杈u和樹杈v通過分支連線。下一行包含的整數m m 100,000 以下m行每行包含乙個資訊,它要麼是 c x 表示在樹杈x上是否存在蘋果的狀態發生改變。即如果樹杈上有蘋果,那麼卡卡就會...