樹狀陣列 Pascal山脈

2021-08-28 21:10:21 字數 815 閱讀 3851

小卡卡順著老者所指的方向,來到了pascal神峰的頂峰。老者告訴小卡卡,pascal山脈有很多座山,都排在一條直線上,每座山都有不同的高度。 

pascal山的山頂有乙個神奇的洞穴,進入這個洞穴後,你將會到達這座山前方的另一座山,更加神奇的是,你到達的山一定比他所在的山高度要小。而pascal聖地最大的寶藏就藏在某一座pascal山上的洞穴中,這個洞穴的特點是它有一道石門封閉著。 

小卡卡很想知道進入每座山的洞穴後,他所到達的不同的山會有多少種可能。

第一行乙個整數n,表示山的個數.(1<=n<=20000) 

第二行以後n行從前到後給出每座山的高度。另外兩座山可以有相同的高度.(1<=每座山的高度<=maxlongint) 

共n行,每行乙個整數.第i行的整數表示他進入第i號山的洞穴後能夠到達的不同的山的個數.

我們從前往後更新樹狀陣列,後面的更小一定不會影響前面,山的高度過高,我們採用map對映

每次先查詢所有比當前小的,在更新

#include#include#include#include#include#includeusing namespace std;

int n,a[20005],b[20005],cnt,tree[20005];

mapma;

int sum(int x)

return ans;

}void add(int x)

}int main()

sort(a+1,a+n+1);

for(int i=1;i<=n;i++)

for(int i=1;i<=n;i++)

}

Pascal陣列遞推

有乙個養鴨專業戶,趕了一大群鴨子出去賣。他每經過乙個村莊,賣出所趕鴨子的一半再多乙隻,這樣他經過七個村莊後,還剩下兩隻鴨子,程式設計列印輸出他每經過乙個村莊後賣出多少只鴨子?剩下多少只鴨子?var a array 0.7 of longint i longint begin a 7 2 for i ...

有效的山脈陣列

leetcode的一道演算法題 給定乙個整數陣列 a,如果它是有效的山脈陣列就返回 true,否則返回 false。讓我們回顧一下,如果 a 滿足下述條件,那麼它是乙個山脈陣列 a.length 3 在 0 i a.length 1 條件下,存在 i 使得 a 0 a 1 a i 1 a i a i...

JS 有效的山脈陣列 陣列

給定乙個整數陣列 a,如果它是有效的山脈陣列就返回 true,否則返回 false。讓我們回顧一下,如果 a 滿足下述條件,那麼它是乙個山脈陣列 a.length 3 在 0 i a.length 1 條件下,存在 i 使得 a 0 a 1 a i 1 a i a i a i 1 a b.lengt...