1. Code Question 1 The manager of an Amazon warehouse needs to ship \( n \) products from different locations, the location ct the \( i^{\text {th }} \) product is represented by an array locations[i]. The manager is allowed to perform one operation at a time. Each operation is described below 1. If the inventory has two or more products, the manager can pick two products \( x \) and \( y \) from the inventory if they have different locations. i.e. 1 > \#include ... locations \( [x]= \) locations \( [y] \) and ship both of them. 2. If the inventory has one or more products, the manager can pick one product \( x \) from the inventory and ship it. Note: After shipping a product it gets removed from the inventory, and the rest of the products which are currently not shipped come together keeping the order the same as before. Given \( n \) products and an array locations, find the minimum number of operations that the manager has to perform to ship all of the products. Example: Given \( n=5 \) and locations \( =[1,8,6,7,7] \). 1h 8m left Example: Given \( n=5 \) and locations \( =[1,8,6,7,7] \). The manager needs to perform 3 operations to ship all of the products. Function Description Complete the function minOperation in the editor below. minOperation has the following parameter(s): int locations[n]: the location of each products. Returns int: the minimum number of operations that the manager has to perform to ship all of the products. Constraints - \( 1 \leq n \leq 10^{5} \) - \( 1 \leq \) locations \( [1] \leq 10^{9} \) Input Format For Custom Testing /* * Complete the 'minOperation' function below. * * The function is expected to return an INTEGER. * The function accepts INTEGER_ARRAY locations as parameter. */ 26 27 int minOperation(int locations_count, int* locations) { 2 8 } 30 3 1 int main() ... ```