Описание задачи
И решение задачи
function modifySequence(arr) {
if (!arr.length || arr.length === 1) {
return 0;
}
let swaps = 0;
for (let i = 1; i < arr.length; i++) {
if (arr[i] <= arr[i - 1]) {
arr[i] = arr[i - 1] + 1;
swaps++;
}
}
return swaps;
}
console.log(modifySequence([1, 7, 10, 2, 2])); // 2
console.log(modifySequence([1, 2, 2, 3, 4])); // 3
console.log(modifySequence([1, 7, 10, 2, 20, 22])); // 1
console.log(modifySequence([1, 7, 10, 2, 1, 20, 22])); // 2
console.log(modifySequence([4, 10, 20])); // 0
console.log(modifySequence([
540162997, 705949, 794, 1000000000, 3466311,
601139, 38172, 73045, 92, 99, 46087528,
1000000000, 4876, 25150656, 1059, 16, 1000000000,
29, 318352140, 7, 548714, 86, 1838944
])); // 21
В последнем примере
Test Case хакер ранка выдает ошибку что ожидаемый результат -
18
Хотя если посчитать количество чисел которую можно заменить, чтобы получилась идеальная последовательность, то все правильно, результат
21
В чем я ошибаюсь?
ПомощникДаже Chat GPT не помог)