Показать сообщение отдельно
  #4 (permalink)  
Старый 25.03.2020, 21:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,133

Nicanor13,
<script>
function ageMatrix (arr)
{  let c;
   return arr.sort((a, b) => a - b).reduce((a, b, i) => {
   if(!c || c.length == 4|| c.length >= 2 && (c[c.length - 1] + 4 < b || arr.slice(i).length == 2)) {
       c = []; a.push(c)
   }
   c.push(b);
   return a
   }, [])
}
document.write(JSON.stringify(ageMatrix ([18, 30, 20, 45, 36, 20, 47, 50]), "", 1) + "<br>")
document.write(JSON.stringify(ageMatrix ([20, 22, 20, 22, 20, 23, 24, 25, 24, 24, 24]), "", 1) + "<br>")
document.write(JSON.stringify(ageMatrix ([18, 20, 22, 24, 26, 28, 30, 18, 18]), "", 1) + "<br>")

</script>

Последний раз редактировалось рони, 25.03.2020 в 22:12.
Ответить с цитированием