Показать сообщение отдельно
  #8 (permalink)  
Старый 16.12.2018, 11:56
Интересующийся
Отправить личное сообщение для JStudent Посмотреть профиль Найти все сообщения от JStudent
 
Регистрация: 10.04.2018
Сообщений: 14

сохранять не обязательно.
Как насчёт треугольника, обход по часовой стрелке, начинать с левого нижнего угла
getPerimetrTriangleBottom = (size, diagonal = []) => {
  return getTemplateArr(size).reduceRight((pre, cur, i, arr) => {
    if (i === 0) {
      pre.push(cur[0]);
      return pre.concat(
        diagonal,
        arr
          .pop()
          .slice(1, -1)
          .reverse()
      );
    }
    pre.push(cur[0]);
    diagonal.unshift(cur[i]);
    return pre;
  }, []);
};

console.log('TriangleBottom', getPerimetrTriangleBottom(5));


getTemplateArr в стартпосте
Ответить с цитированием