Help me in solving SWAPNUM31 problem

My issue

My code

#include "bits/stdc++.h"
using namespace std;
#define int long long
signed main() 
{
	int t;
	cin >> t;
	
	while(t--)
	{
	    int n,k;
	    cin >> n >> k;
	    
	    vector<int>arr(n);
	  
	    for(int i = 0;i<n;i++)
	    {
	        cin >> arr[i];
	       
	    }
	    
	    vector<int>left;
	    vector<int>right;
	  for(int i = 0;i<n;i++)
	  {
	      if((i + k)<n)
	      {
	          left.push_back(i);
	          right.push_back(i + k);
	      }
	  }
	  
	  
	  
	  vector<int>final;
	  
	  for(auto it:left)
	  {
	      final.push_back(arr[it]);
	  }
	  for(auto it:right)
	  {
	      final.push_back(arr[it]);
	  }
	  
	  sort(final.begin(),final.end());
	  reverse(final.begin(),final.end());
	  
	  for(auto it:left)
	  {
	      arr[it] = final[final.size() - 1];
	      final.pop_back();
	  }
	  
	  for(auto it:right)
	  {
	       arr[it] = final[final.size() - 1];
	      final.pop_back();
	  }
	  
	  
	  
	  for(auto it:arr)
	  {
	      cout << it << " ";
	  }
	  
	  cout << endl;
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
	   
	    
	    
	    
	  
	    
	}
	
	return 0;
}

Problem Link: SWAPNUM31 Problem - CodeChef