Не мога да се справя с една от задачите от примерния изпит. Получавам резултат от 66.667 точки, но изглежда, че последните три test case-а не отговарят на условието на задачата (т.е. от подадените няма “alone numbers” и/или не са равни на target-а).
Може би аз пропускам нещо, но не знам как да процедирам.
Кратко и ясно по същество в първия ти if имаш много “или” вместо “и”-та.А самото условие изисква точно определени елементи от масива да отговарят на няколко критерия на веднъж а не от време на време,както става с “или” логическият оператор.
Друго нещо е цикъла ти да върти от 1 до array.length - 1 така изключваш първи и последен елемент ,които никога не са alone numbers,нещо което мен ме затрудни да измисля в началото.
Не мисля , че е добре да ползваш var ,защото нямам собствен scope , a e към глобалния .ето още едно решение let arr = gets().split(", ").map(Number)
let number = +gets()
//let aloneNumber = false
for (let i = 1; i < arr.length - 1; i++) {
const element = +arr[i];
const previous = +arr[i - 1]
const next = +arr[i + 1]
if (element === number && element !== previous && element !== next) {
arr[i] = Math.max(previous, next);
Избягвайте всякаква употреба на “var”. Ще дойде време в курса, когато ще бъде обяснено защо. Но за момента забравете за него. За “const” - инициализиране и деклариране на променливи, на които няма да променяте стойността. Тук обаче трябва да се има предвид типа на променливите. Ако са от референтен тип (като масивите например) може да се използва “const” и това няма да ви попречите да променяте елементи вътре в масива или да добавяте, или да махате такива от него. Винаги, когато може да ползвате const - използвайте го. За “let” - променливи, на които ще променяте стойността (най-често за броячи например).
Здравейте, тази задача ме озадачава значително. Да започнем с условието първо пише, че се дава масив, а на практика се дава стринг, от който можем да си направим масив. Хубаво, можем да го интерираме по различни начини. Трябва да върнем нова версия на дадения масив което на практика е невъзможно. Но дори и да върнем верен масив системата дава грешен отговор и Short circuits. Единствения начин да приеме отговора за верен и да върнем стринг който прилича на масив. Къде ми се чупи логиката? Или просто не познавам функционалността на системата?