Avoid Obstacles

Description


You are given an array of integers representing coordinates of obstacles situated on a straight line.

Assume that you are jumping from the point with coordinate 0 to the right. You are allowed only to make jumps of the same length represented by some integer.

Find the minimal length of the jump enough to avoid all the obstacles.

Example

For inputArray = [5, 3, 6, 7, 9], the output should be avoidObstacles(inputArray) = 4.

Check out the image below for better understanding:

Input/Output

  • [execution time limit] 4 seconds (js)

  • [input] array.integer inputArray

Non-empty array of positive integers.

Guaranteed constraints: 2 ≤ inputArray.length ≤ 10, 1 ≤ inputArray[i] ≤ 40.

  • [output] integer

The desired length.

[JavaScript (ES6)] Syntax Tips

1
2
3
4
5
6
// Prints help message to the console
// Returns a string
function helloWorld(name) {
    console.log("This prints to the console when you Run Tests");
    return "Hello, " + name;
}

Solution


1
2
3
4
5
6
7
8
function avoidObstacles(inputArray) {
    var max =Math.max(...inputArray);
    for (var i = 1; i< max; i++) {
        var divs = inputArray.some(x=>x%i==0)
        if(!divs) return i;
    }
    return max +1;
}