資料比較大,先離散化。
可以先把x sort一遍通過v找出答案
如果x由小到大,前面v比當前v小d(i,j)=xi-xj;否則為0
i時前面所有的d為 比現在小的點數目*a[i].x-比現在小的點的距離和
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#if __cplusplus >= 201103l
#include
#include
#endif
#define ll long long
#define int long long
using
namespace std;
const
int inf =
0x3f3f3f3f
;const
int maxn=
500010
;int b[
500010];
int m,n;
struct node
}a[maxn]
;int
lowbit
(int x)
int bit[maxn][3
];void
edit
(int pos,
int val)
}int
query
(int pos,
int k)
return res;
}signed
main()
sort
(a+1
,a+1
+n);
sort
(b+1
,b+1
+n);
m=unique
(b+1
,b+1
+n)-b-1;
for(
int i=
1;i<=n;i++
) a[i]
.v=lower_bound
(b+1
,b+1
+m,a[i]
.v)-b;
int ans=0;
for(
int i=
1;i<=n;i++
) cout<
return0;
}
離散化 樹狀陣列
題目描述 erwin最近對一種叫 thair 的東西巨感興趣。在含有n個整數的序列a1,a2 an中,三個數被稱作 thair 當且僅當i求乙個序列中 thair 的個數。輸入格式 開始乙個正整數n,以後n個數a1 an。輸出格式 thair 的個數 思路 列舉中間的數字,求排在它前面,小於它的有幾...
Flowers 樹狀陣列 離散化
題意 給你一些花,以及這些花開花的時間,問你在某一時間開花的總個數 很明顯的樹狀陣列題,插線問點。ac include include include include include define n 1000005 using namespace std typedef struct node n...
排序(離散化 樹狀陣列)
題目 資料範圍大,交換相鄰的的樹,使有序 解題說明 關鍵是知道,每個數交換的次數是其前面比它大的樹的個數。用樹狀陣列維護一下 ac include include include includeusing namespace std typedef long long ll const int ma...