Advertisement
a53

cb

a53
Nov 10th, 2017
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.89 KB | None | 0 0
  1. #include <iostream>
  2. #include <algorithm>
  3. using namespace std;
  4.  
  5. int n,a[200005],T,nrel,x,y;
  6. int lowerIndex(int arr[],int n,int x)
  7. {
  8. int l=1,h=n ;
  9. while(l<=h)
  10. {
  11. int mid=(l+h)/2;
  12. if(arr[mid]>=x)
  13. h=mid-1;
  14. else
  15. l=mid+1;
  16. }
  17. return l;
  18. }
  19.  
  20. int upperIndex(int arr[],int n,int y)
  21. {
  22. int l=1,h=n;
  23. while(l<=h)
  24. {
  25. int mid=(l+h)/2;
  26. if(arr[mid]<=y)
  27. l=mid+1;
  28. else
  29. h=mid-1;
  30. }
  31. return h;
  32. }
  33.  
  34. int countInRange(int arr[],int n,int x,int y)
  35. {
  36. int count=0;
  37. count=upperIndex(arr,n,y)-lowerIndex(arr,n,x)+1;
  38. return count;
  39. }
  40.  
  41. int main()
  42. {
  43. int i;
  44. cin>>n>>T;
  45. for(i=1;i<=n;++i)
  46. cin>>a[i];
  47. sort(a+1,a+n+1);
  48. for(i=1;i<=T;++i)
  49. {
  50. cin>>x>>y;
  51. cout<<countInRange(a,n,x,y)<<'\n';
  52. }
  53. return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement