Introduction

Hello there! Are you ready to solve another engaging problem today? We have a practical task that will enhance your problem-solving skills. It involves critical aspects of programming — dealing with slices and using techniques such as sorting and the two-pointer method. So, let's jump in!

Task Statement

Our task is as follows. Suppose you have two equally long slices, A and B, with lengths varying from 1 to 1000, with each element being a unique positive integer ranging from 1 up to 1,000,000. Your challenge is to create a Go function that performs the following steps:

  1. For each element B[i] in slice B, double its value to get 2 * B[i].
  2. Find the closest number to 2 * B[i] in slice B. Let's call this closest number B[j].
  3. For each index i in slice B, get the value at index j in slice , i.e., .
Sign up
Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal