Как стать автором
Обновить
4
0.1
Отправить сообщение

Даже анимация?

Замыкание — это то, что здесь описано в "призраке вызова функции". В предыдущих примерах только доступ к внешним переменным.

const swap = (inputArray, i, j) => {
const arr = [...inputArray];
arr[i] = inputArray[j];
arr[j] = inputArray[i];
return arr;
};

5 пункт: пора уже привыкать к "??", по крайней мере там где ts или бабель
  1. Фибоначчи


  2. Про священников. Если всего N согрешивших, то они все уходят в N-й день от начала эксперимента. По индукции: если всего один, то он видит всех без рисунков, понимает, что это он (по условию священники знают, что должен быть хотя бы один). Если согрешило N+1, то каждый из них, увидев, что в N-й день никто не ушел (притом, что каждый грешник видит N грешников), понимает, что на самом деле он тоже, и уходит.


Если в компоненте много логики, то её удобно вынести, например, в mobx-овый стор, а этот стор передавать во вьюшку с помощью хука, который сможет обеспечить стору жизненный цикл, например, очистку при анмаунте, или даже обновления. Весьма подходит, если надо пошарить логику между вьюшками для десктопа и мобилы.

Плюс, свои хуки для различных кейсов, где надо на события документа подписаться, или с таймерами что-нибудь, и т.д.

Понятное дело, если мы попробуем прямо в функциональном компоненте с вёрсткой что-то хитрое нарисовать хуками, это будет спагетти. Напрямую можно только по мелочи.
Вообще-то везде по разному направление.
В JS, к примеру, 4**3**2 = 4**(3**2), то есть как в «степенной башне».
На 50 значениях разницу не заметить. Попробуйте на 100000, например. Асимптотике нужен простор, чтобы себя показать. И да, искать что-нибудь, что находится хотя бы в середине массива, или, как посоветовал автор, то чего нет. Третье по счету значение всегда будет мгновенно находиться :)
В чём убогость Set?
Ещё не хватает вызова колбеков then()/catch() в микротасках, концепции thenable, и прочая и прочая…
Моё имхо — промисный полифил слишком громоздкий, чтобы быть задачей для собеседования.
Настолько приблизительного «полифила» для промиса я ещё не видел :)

Рекурсивный обход дерева не выдает требуемый порядок, потому что «поиск в глубину». Нерекурсивный — норм., там «поиск в ширину».

Ну и RLE можно в одну строку
const rle = s => s.replace(/(.)\1+/g, (m, c) => c + m.length);
у меня наоборот, так было когда понадобилось по мелочи подпилить бэкенд питоновский
Вопрос 1 (а)
1) наливаем полный 3 литра
2) переливаем его в 4, там остается 1 пустой литр
3) наливаем полный 3 литра
4) переливаем из него литр в 4, в 3хлитровом остается 2
5) выливаем из 4 всё.
6) из 3х-литрового всё в 4х-литровый


Вопрос 1 (б)
1) наливаем полный 4 литра
2) из него переливаем 3 литра в 3х-литровый, остается 1 литр.
3) опустошаем 3х литровый
4) из 4х-литрового перекидываем литр в 3х-литровый
5) заполняем 4х-литровый
6) из 4х-литрового 2 литра в 3х-литровый


Вопрос 2
x + 20x + 5y = 200
21x + 5y = 200
х должен делиться на 5, т.е. x = 5m
21m + y = 40
варианты:
1) m = 0, y = 40
2) m = 1, y = 19

требуется минимум y, потому второй.
откуда x = 5

Согласен. Иногда приходится дебагом поездить, а в крайних случаях дописать в пакете console.log или ещё что-то для экспериментов.

С нулями не совсем так. Нули создаются парой 2*5, и поскольку 5 — более редкий ресурс, считаем только пятерки и их степени
floor(N / 625) + floor(N / 125) + floor(N / 25) + floor(N / 5)

Задачка с конями не программерская, там чисто на комбинаторику. Например, если N и M больше 4, то у первого коня есть 4 угловые позиции, где он бьёт 2 поля (и таким образом второму запрещено вставать на 3 клетки), 8 позиций на краю доски рядом с углом (по 3 битых поля), 4 позиции на диагонали рядом с углом (по 4 битых поля), 2N+2M-16 клеток на краю (по 4 битых поля), 2N+2M-16 клеток на рядах рядом с крайними (по 6 битых полей), ну и всё остальное, где конь бьёт 8 полей. Это всё правильно просуммировать, будет ответ.

Генераторы — тупиковая ветвь развития, любую логику можно переписать с них более очевидным способом. А Symbol… почему именно Symbol? Чем он показательнее других новинок языка для проверки знаний?

12 ...
46

Информация

В рейтинге
2 680-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Frontend Developer
Senior
JavaScript
TypeScript
React
HTML
CSS
Web development
Redux
MobX
Webpack