function avoidObstacles(nums) {
nums.sort((a,b) => { return a - b });
const maxNum = nums[nums.length - 1];
for (let i = 2; i <= maxNum; i++) {
let pass = true;
for (let j = 0; j < nums.length; j++) {
if (nums[j] % i === 0) {
pass = false;
break;
}
}
if (pass) {
return i;
}
}
return maxNum + 1;
}
/**
* Test Suite
*/
describe('avoidObstacles()', () => {
it('returns minimal number of jumps in between numbers', () => {
// arrange
const nums = [5, 3, 6, 7, 9];
// act
const result = avoidObstacles(nums);
// log
console.log("result: ", result);
// assert
expect(result).toBe(4);
});
});