UPC5727小奇遐想 樹狀陣列 容斥

2021-08-21 20:25:21 字數 1554 閱讀 2130

時間限制: 1 sec  記憶體限制: 128 mb

提交: 285  解決: 58

[提交] [狀態] [討論版] [命題人:admin]

題目描述

擷來一縷清風飄渺

方知今日書信未到

窗外三月天霽垂柳新長枝條

風中鳥啼猶帶歡笑

——《清風醉夢》

小奇望著青天中的悠悠白雲,開始了無限的遐想,在它的視野中,恰好有n朵高度不同的白雲排成一排,他想從左到右選出四朵白雲a,b,c,d,使得h_a輸入

第一行包括1個整數n。

第二行包括n個整數,第i個正數表示h_i,保證這n個整數是n的乙個全排列。

輸出輸出乙個整數表示答案。(mod 16777216)

樣例輸入

5

1 5 3 2 4

樣例輸出

0
提示

對於10%的資料n<=600;對於40%的資料n<=5000;

對於100%的資料n<=200000。

#includeusing namespace std;

typedef long long ll;

typedef unsigned long long ull;

#define io ios::sync_with_stdio(false),cin.tie(0)

#define fin freopen("d://code", "r", stdin)

#define ppr(i,x,n) for(int i = x;i <= n;i++)

#define rpp(i,n,x) for(int i = n;i >= x;i--)

const double eps = 1e-8;

const int mod = 16777216;

const int maxn = 5e5+10;

const double pi = acos(-1);

const int inf = 0x3f3f3f3f;

const ll inf = 0x3f3f3f3f3f3f3f3f;

inline int read()

ll front[maxn],back[maxn];//分別記錄當前位置前面比他小的有多少個,後面比他大的有多好個

ll a[maxn];

ll c[maxn];

ll n,ans1,ans2,ans;//ans1表示12xx個數ans2表示1234的個數最後ans=ans1-ans2為答案

ll lowbit(ll x)

ll sum(ll k)

return ans;

}void add(ll k,ll x)

}int main()

memset(c,0,sizeof(c));

rpp(i,n,1)

//ppr(i,1,n) cout

memset(c,0,sizeof(c));

ppr(i,1,n)

//cout

cout<}

小奇遐想(樹狀陣列)

擷來一縷清風飄渺 方知今日書信未到 窗外三月天霽垂柳新長枝條 風中鳥啼猶帶歡笑 清風醉夢 小奇望著青天中的悠悠白雲,開始了無限的遐想,在它的視野中,恰好有n朵高度不同的白雲排成一排,他想從左到右選出四朵白雲a,b,c,d,使得h a輸入 第一行包括1個整數n。第二行包括n個整數,第i個正數表示h i...

樹狀陣列 小奇遐想

時間限制 1 sec 記憶體限制 128 mb 提交 225 解決 35 提交 狀態 討論版 命題人 admin 題目描述 擷來一縷清風飄渺 方知今日書信未到 窗外三月天霽垂柳新長枝條 風中鳥啼猶帶歡笑 清風醉夢 小奇望著青天中的悠悠白雲,開始了無限的遐想,在它的視野中,恰好有n朵高度不同的白雲排成...

小奇遐想 樹狀陣列實現 容斥思想

時間限制 1 sec 記憶體限制 128 mb 提交 165 解決 21 提交 狀態 討論版 命題人 admin 題目描述 擷來一縷清風飄渺 方知今日書信未到 窗外三月天霽垂柳新長枝條 風中鳥啼猶帶歡笑 清風醉夢 小奇望著青天中的悠悠白雲,開始了無限的遐想,在它的視野中,恰好有n朵高度不同的白雲排成...