TGViewer
Data Science: Алгоритмы и Структуры данных Data Science: Алгоритмы и Структуры данных @structuredata · 7.64K subscribers
Post #4720 531
Как мы считаем недельное меню в Pikni Food: пачки, остатки и solver вместо списка рецептов

Когда мы только начали собирать Pikni Food, идея выглядела довольно простой: пользователь отвечает на несколько вопросов, мы подбираем блюда, считаем калории и показываем список покупок.

На первый взгляд это похоже на обычное приложение с рецептами. Но довольно быстро стало понятно, что самая интересная часть начинается не в рецептах, а в довольно базовой продуктовой корзине.

Например, меню требует 620 г гречки, а в магазине она продаётся пачкой 900 г. Рецепту нужно 180 г творога, а упаковка может быть 400 г. Огурец в салате можно посчитать как 70 г, но купить его всё равно придётся штукой или лотком. Если считать только съеденные граммы, неделя выглядит аккуратно и недорого, ну а если считать чек, то… получается совсем другая история.

Так мы пришли к выводу, что мы делаем не просто «генератор рецептов», а планировщик продуктовой корзины. А в нём важно не только КБЖУ, но и многое другое, например: упаковки, остатки, сроки годности, цены магазинов, техника на кухне, время готовки и тд.

Ниже расскажу как это всё устроено, какие алгоритмы пробовали, с какими проблемами столкнулись и как мы их решали.

https://habr.com/ru/articles/1048656/

Алгоритмы и Структуры данных
More from @structuredata
  1. Oct 15, 2026​Введение в криптографию и шифрование Когда-то материал из этой лекции читали в МГУ целых…
  2. Oct 15, 2026​Структура данных «очередь» (queue) — принципы работы С понятием очереди вы наверняка хоро…
  3. Oct 14, 2026Как платить за границей и за зарубежные сервисы в 2026 году? Можно переплачивать посредник…
  4. Oct 14, 2026​Визуализация 10 алгоритмов на графах Изучаете теорию графов? В статье вы найдёте 10 гифок…
  5. Oct 14, 2026Алгоритмы и структуры данных: примеры реализаций на JavaScript Если вы изучаете JavaScript…
  6. Oct 13, 2026Как разобраться в Computer Science Computer Science — программирование, математика и всё,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →