Time Limits: 1000 ms Memory Limits: 65536 KB Detailed Limits
1 #include<bits/stdc++.h>
2 #define ri register int
3 #define il inline
4 #define go(i,a,b) for(ri i=(a);i<=(b);++i)
5 using namespace std;
6 template<class T> il T read(T& a) {
7 char c;bool f=0;
8 for(;!isdigit(c=getchar());f|=(c=='-'));
9 for(a=c-'0';isdigit(c=getchar());a=a*10+c-'0');
10 return a=(f?-a:a);
11 }
12 const int N=1e5+7;
13 int n,a,p[N],ans,tr[N];
14 il void add(ri x,ri f) {for(;x<=n;x+=(x&-x))tr[x]+=f;}
15 il int ask(ri x) {int r=0;for(;x;x-=(x&-x))r+=tr[x];return r;}
16 int mian() {
17 read(n);
18 go(i,1,n) p[read(a)]=i,add(i,1);
19 go(i,1,n-1) {
20 if(i&1) {
21 ri t=(i+1)>>1;
22 cout<<ask(p[t]-1)<<'\n';
23 add(p[t],-1);
24 }else {
25 ri t=n-(i>>1)+1;
26 cout<<ask(n)-ask(p[t])<<'\n';
27 add(p[t],-1);
28 }
29 }puts("0");
30 return 0;
31 }