Недавно был на собеседовании, дали тестовое задание, в котором нужно было придумать алгоритм.
Алгоритм должен предлагать на основании суммы и даты покупки категорию покупки.
Опираться нужно только на уже существующие операции(!).
Возможно ли придумать что-то подобное? Я ответил отрицательно.
Да вся статистика же про это.
Например (для москвы) расход в районе 30-50руб. утром или вечером это скорее всего поездка на транспорте. Расход в 200-500 рублей в районе обеда это обед и т.п.
Ну так и опирайтесь на существующие. Если у вас каждый рабочий день утром есть категория транспорт с суммой 38рублей, то наверное и новая операция на 38 рублей утром вторника это тоже транспорт, а не развлечения.
Это провал. Нельзя просто так взять и сказать нет, это не возможно или да, это возможно.
Нужно обосновывать. В крайнем случае, если лень быстро учиться, можно ответить - не знаю, но это на грани фола.
Если бы вы написали что попробовали использовать для решения этой задачи https://tproger.ru/translations/top-10-data-mining... но видите что это вообще/лично для вас трудно/затратно и другие варианты, возможно потенциального работодателя заинтересовала бы ваша интерпретация задачи.
Roman, Разумеется я не просто написал "Нереально". У меня были свои доводы "за" и "против", но в вопросе речь не об этом.
Мне самому лень думать над подобными задачками, хотелось посмотреть возможные варианты решений.
Возможно, ожидания были другими например - от вас ждали рассмотрения возможных решений поставленной задачи, а вы написали причины по которым вы не можете этого сделать. В любом случае вы всей информации не даете, поэтому строить предположения сложно.
Есть вариант когда дается задача, как у вас
Алгоритм должен предлагать на основании суммы и даты покупки категорию покупки.
Опираться нужно только на уже существующие операции(!).
Но там не написано, что в существующих операциях нет дополнительной информации. А что не запрещено - значит разрешено.
HellYeahOmg, надо же понимать, что это именно подсказка. Выводите скажем три штуки близких, шанс угадать будет выше, чем выводить просто случайные. Вероятность будет зависеть от разброса по ценам между категориями.
Какого-то бинома Ньютона тут нет, скорее всего цель этого вопроса это проверить находчивость претендента, может ли он не действовать как алгоритм, а придумывать на ходу. Не всегда это хорошее качество, но иметь его нужно.
А вот причем тут дата, не знаю. Возможно есть зависимость от времени между осуществлением заказа и его реализацией и категорией.
Средние наверное не очень. Лучше какие-нибудь кластера. Например еда это и шаурма на бегу за 100 рублей и поход в ресторан за 5000 (и наверное вечером). Но вряд ли это 2500 потраченные утром.
HellYeahOmg, это зависит от количества данных, то есть от количества уже совершенных операций. Само собой, если их было 10, то вероятность ничтожна, а если десятки тысяч, то уже могут быть хорошие корреляции. От тебя, возможно, ждали что ты расскажешь про случайные леса или что то типа того.
Бинарным поиском в отсортированной истории покупок ищем ближайшие суммы Sn1+, Sn1-
Смотрим их категории:
- k и k --> категория нашей суммы Sn это k
- k и k+1 --> ставим k+1 или высчитываем наим по модулю разность сумм (Sn1+)-Sn и (Sn1-)-Sn. Допустим, (Sn1-)-Sn это min, ставим категорию k