Having some problems in CSES "Apartment" problem

I’ve tried to solve this question using binary search but I guess I got a wrong answer due to duplicates elements in a[i]. I need to optimize my code a bit but I don’t know how can anyone help me here.
problem Link: CSES - Apartments

I don’t think you need binary search for this problem rather a trivial two pointer on the sorted arrays will also do the job. There’s not much to explain unless you know two pointers. I’ve attached the AC code below.

using namespace std ;
int main(){
  int n,m,k,ans=0;
  cin >> n >> m >> k ;
  vector<int>a(n),b(m) ;
  for(int &x:a)
    cin >> x  ;
  for(int &x:b)
    cin >> x ;
  sort(a.begin(),a.end()) ;
  sort(b.begin(),b.end()) ;
  for(int i=0,j=0;i<n;i++){
      ++j ;
      ++ans,++j ;
  cout << ans  ;
1 Like