Music. Hi, I'm Edgar and I'm a software engineer at [company name]. Hi, I'm Becky and I'm a software engineer at [company name]. So, Edgar, the question I'm going to give you today is this: I'm going to give you a collection of numbers and I need you to find a pair of numbers in the collection that add up to a sum that I give you. For example, the collection of numbers could be 1, 2, 3, and 9, and the sum I'm looking for is 8. Another example could be 1, 2, 4, and 4, with the sum I'm looking for also being 8. In the first example, there is no pair of numbers that add up to 8. However, in the second example, the pair of 4s add up to 8. So, the goal is to find a pair of numbers that add up to the given sum. How are these numbers given? Can I assume that they're stored in an array in memory? Yes, you can assume that they're in memory. You can also assume that they're ordered in ascending order. Additionally, repeating elements can exist, but you cannot repeat the same element at the same index twice. However, the same number may appear twice in different indexes. So, for the task, the simplest solution would be to compare every possible pair by using nested loops. One loop would scan the entire collection, and the second loop would start from the index after the first loop to avoid repeating values. However, this solution would be time-consuming and inefficient. Another solution, considering the numbers are sorted, is to use binary search. For example, if the target sum is 8 and I have a 1, I can a binary search to check if there is a 7 in...