两种排序。不解释
View Code
1 #include2 #include 3 #include 4 #include 5 using namespace std; 6 const long long maxn=500005; 7 struct node 8 { 9 long long x; 10 long long i; 11 }e[maxn]; 12 bool cmp(node a,node b) 13 { 14 return a.x 0;i--) 52 { 53 long long k=t[i]; 54 while(k>0) 55 { 56 ans+=c[k]; 57 k-=(k&-k); 58 } 59 k=t[i]; 60 while(k<=n) 61 { 62 c[k]++; 63 k+=(k&-k); 64 } 65 } 66 printf("%lld\n",ans); 67 } 68 return 0; 69 }