fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main(){
  5. int n,m; cin>>n>>m;
  6. vector<int> a(n);
  7. for(int i=0;i<n;i++) cin>>a[i];
  8. sort(a.begin(),a.end());
  9. long long cnt=0;
  10. for(int i=0;i<n;i++){
  11. int trai=i+1,phai=n-1,vitri=i;
  12. while(trai<=phai){
  13. int mid=(trai+phai)/2;
  14. if(a[i]+a[mid]<=m){
  15. vitri=mid;
  16. trai=mid+1;
  17. }
  18. else phai=mid-1;
  19. }
  20. cnt+=vitri-i;
  21. }
  22. cout<<cnt;
  23. return 0;
  24. }
  25.  
Success #stdin #stdout 0.01s 5304KB
stdin
5 6
1 2 3 4 5
stdout
6