fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define ll long long
  4. #define mx 100005
  5. ll input[mx];
  6. int tree[mx*8];
  7. void update(int pos, int b, int e, int i, int j)
  8. {
  9. if(b>e || b>j || e<i) return;
  10. if(b>=i && e<=j){
  11. tree[pos]++;
  12. return;
  13. }
  14. int m = (b+e)/2;
  15. int l = pos*2;
  16. int r = l+1;
  17. update(l, b,m,i,j);
  18. update(r,m+1,e,i,j);
  19. tree[pos] = tree[l] + tree[r];
  20. }
  21. int query(int pos, int b, int e, int i, int j)
  22. {
  23. if(b>e || b>j || e<i) return 0;
  24. if(b>=i && e<=j){
  25. return tree[pos];
  26. }
  27. int m = (b+e)/2;
  28. int l = pos*2;
  29. int r = l+1;
  30. return (query(l, b,m,i,j) + query(r,m+1,e,i,j));
  31. }
  32. int main()
  33. {
  34. int tc,n;
  35. scanf("%d",&tc);
  36. while(tc--){
  37. scanf("%d",&n);
  38. set<ll> st;
  39. for(int i=1; i<=n; i++){
  40. scanf("%lld",&input[i]);
  41. st.insert(input[i]);
  42. st.insert(input[i]/2);
  43. }
  44. map<ll, int> mp;
  45. int val = 0;
  46. auto it = st.begin();
  47. while(it!=st.end()){
  48. mp[ (*it) ] = ++val;
  49. it++;
  50. }
  51. memset(tree, 0, sizeof tree);
  52. ll ans = 0;
  53. for(int i=1; i<=n; i++){
  54. int x = mp[input[i]/2];
  55. //cout<<1<<" to "<<x<<" = "<<query(1,1,val,1,x)<<endl;
  56. ans+=query(1,1,val,1,x);
  57. x = mp[ input[i] ];
  58. //cout<<"up: "<<x<<endl;
  59. update(1,1,val,x,x);
  60. //cout<<"ttt: "<<tree[1]<<endl;
  61. }
  62. printf("%lld\n",ans);
  63. }
  64. }
  65.  
Time limit exceeded #stdin #stdout 5s 6120KB
stdin
Standard input is empty
stdout
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866126
61866