Навскидку:
1) первое приближение как в варианте Федора, вычислить сумму S.
2) если S === Q (требуемая сумма), то ок.
3) если Q - S = m, то выбрать m элементов и накинуть им по единице. Выбрать такие, чтобы после накидывается единицы процентное отклонение было наименьшим. Двоичная куча в помощь.
4) если S - Q = m, то наоборот, посбивать единицы, аналогично п.3.
Взять файл с каким-нибудь растровым шрифтом. Загуглить (или заяндексить) формат. Прочитать файл, собрать матрицу для буквы. Распечатать.
Можно и векторный шрифт, но там не обойтись без математики.
Обычно да, обмазывают эвентами. Данные изменились и сообщили об этом всем подписчикам. Но можно использовать библиотеки реактивности, например, MobX, тогда всё будет проще и удобнее.
И shift, и splice будут реально смещать все элементы. Нет, массив не реализован как список. delete тоже неоптимальный вариант. А вот вышеупомянутый (в комментариях к вопросу) кольцевой буфер на массиве длиной N - идеально для твоего кейса.
boundedBy - "область на карте, где предположительно находится искомый объект". Это приоритеты, а не ограничения для поиска. Похоже, придется запилить свою реализацию ISuggestProvider, где вручную поюзать geocode, в котором boundedBy отработает как надо вместе с опцией strictBounds=true. Эту реализацию запихнуть в options.provider для SuggestView
Первый очень плох из-за того, что api прибивается гвоздями к какому-то modal, хотя должно заниматься только общением с сервером, в общем, полнейший бардак и никакого разделения на слои. Третий не удобен, потому что в таком виде в случае ошибки response будет равен значению, возвращаемому функцией modal, это надо проверять отдельно и всё равно выходить. Во втором всё как положено - либо работаем с респонсом, либо вываливаемся в catch
Если я правильно понял, fetch возвращает некий хтмл, который потом втыкается в someElement.innerHTML? Тогда все имеющиеся в этом хтмл теги < script > просто добавятся, но не отработают. Надо найти их как someElement.querySelectorAll('script') и каждый "передобавить" вручную, тогда код в них отработает.