Софтуерно Инженерство
Loading...
+ Нов въпрос
duratsia avatar duratsia 20 Точки

[8 Lab Arrays & Matrices] Sum Last K Numbers Sequence

Здравейте колеги! Не мога да разбера решението на тази задача. Особенно този ред "let start = Math.max(0, current - k);"

Какво правят  променливите start, and, sum

Гледай задачата тук https://pastebin.com/gA1073LT

 

Ще споделете ли решението с малко пояснения?smiley

Благодаря!

 

 

Тагове:
1
JavaScript Fundamentals
kristina111 avatar kristina111 58 Точки

Ето моето решение.

Малко обяснения: 

- в условието пише, че първият елемент от масива винаги е 1, затова създавам променлива outputArr да е масив с един елемент, който е числото 1;

- допълвам масива до подадената ни от входа дължина с for-цикъл, като всеки следващ елемент е равен на резултата от функция, която връща сумата на последните к на брой елементи от outputArr масива;

- функцията sumLastK(arr, k) приема outputArr масива и к (броят последни елементи от масива, които трябва да се съберат):

     - за стойността на к - проверявам дали к < от дължината на масива - ако е по-малка от дължината на масива, си остава със своята стойност, ако не, става равна на дължината на масива (ако я няма тази проверка, връща undefined за индекс от масива, който не съществува);

     - сумата на послените елементи намирам с for-цикъл, който въртя от let i = 1 до к, като индексът на всеки от елементите, които добавям в сумата, е дължината на масива минус i (така започвам от последния елемент и вървя назад по елементите на масива).

0
06/06/2017 23:07:30
duratsia avatar duratsia 20 Точки

Благодаря ти за отговор!

0
georkom avatar georkom 8 Точки

  С '' let start = Math.max(0, current - k); " освен че намираме началната позиция, от която да започне сумирането на елементите от редицата при образуването на нов елемент, си осигуряваме тази позиция да е в рамките на редицата. А  sum, всъщност, е новообразувания елемент на редицата.

  След 50:00 мин. на това видео има обяснение:

https://softuni.bg/trainings/resources/video/10399/video-screen-29-september-2016-svetlin-nakov-js-fundamentals-september-2016

0