elizarov /
kotlin-coroutine-agent-exercise
Тестовое задание для летней практики 2017: Агент и плагин для отладки корутин на языке Kotlin
17/100 healthLoading repository data…
Fortage / repository
Тестовое задание на курс по андройд разработке
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Тестовое задание на курс по андройд разработке
Представьте, что вы разрабатываете мобильное приложение, получающее пуш-уведомления, которое локально принимает решение, нужно ли их показать пользователю. Пуши бывают разных типов, разные типы пушей могут фильтроваться разными правилами. Некоторые правила подходят к нескольким типа пушей. Вам нужно разработать систему, которая бы умела фильтровать входящие пуши.
Система должна уметь принимать на вход параметры, определяющие свое состояние. Параметры, которые может принимать система следующие:
time — время, установленное на устройстве, тип long; age — возраст пользователя, тип int; gender — пол пользователя, возможные значения: m, f; os_version — версия операционной системы, тип int; x_coord — x координата пользователя в условных единицах, тип float; y_coord — y координата пользователя в условных единицах, тип float. Также система получает пуши. Пуши бывают разного типа, у всех пушей есть следующие параметры:
text — текст для показа, тип string; type — тип пуша; Типы пушей:
LocationPush — пуш с дополнительными параметрами: x_coord (float), y_coord (float), radius (int), expiry_date (long); AgeSpecificPush — пуш с дополнительными параметрами: age (int), expiry_date (long); TechPush — пуш с дополнительным параметром os_version; LocationAgePush — пуш с дополнительными параметрами: x_coord (float), y_coord (float), radius (int), age (int); GenderAgePush — пуш с дополнительными параметрами: gender, age (int); GenderPush — пуш с дополнительными параметрами gender. Набор правил фильтрации:
Фильтрация по положению. Применяется для пушей типа LocationPush, LocationAgePush. Правило: если координаты системы по евклидову расстоянию x_coord, y_coord строго дальше от координат пуша на radius из пуша, то пуш должен быть отфильтрован (т.е. не показан).
Фильтрация по возрасту. Применяется для пушей типа AgeSpecificPush, LocationAgePush, GenderAgePush. Правило: если age, указанный в пуше, строго больше, чем age, заданный системе, то пуш должен быть отфильтрован.
Фильтрация по версии системы. Применяется для TechPush. Правило: если os_version в системе строго больше, чем os_version в пуше, то пуш должен быть отфильтрован (то есть, пуш показывается на равных и более старых версиях, чем указано в пуше).
Фильтрация по дате протухания пуша. Применяется для LocationPush, AgeSpecificPush. Правило: если expiry_date у пуша строго меньше, чем time в системе, то пуш должен быть отфильтрован.
Фильтрация по полу. Применяется для пушей GenderAgePush, GenderPush. Правило: если gender, указанный в системе, отличен от переданного в пуше, то пуш должен быть отфильтрован.
Входные данные
В первых 6-и строках через пробел — параметры системы в случайном порядке.
В следующей строке — количество пушей N (1≤N≤105).
N раз: следующая строка — количество параметров пуша M (3≤M≤6), после которой идет M строк с параметрами пуша в случайном порядке.
Выходные данные
Для каждого неотфильтрованного пуша поле text с новой строки в той же последовательности, в которой они пришли во входных данных (например, если пришло 3 пуша, а система отфильтровала только 2-ой пуш, то нужно вывести text сначала 1-го, а потом 3-го пуша). Если система отфильтровала все пуши, то вывести -1.
Selected from shared topics, language and repository description—not editorial ratings.
elizarov /
Тестовое задание для летней практики 2017: Агент и плагин для отладки корутин на языке Kotlin
17/100 healthNaint /
Тестовое задание. Отбор на стажировку в VK. Весна 2024.
31/100 healthdemoneno4ec /
Первое задание на котлине, тестовое.
27/100 healthdczrbfz /
тестовое задание на котлине
27/100 healthKaerLaende /
Тестовое задание бекэнд на Котлин.
15/100 healthmaplequino /
Тестовое задание для ВШЭ на трек "разработка приложений на Android на языке Kotlin"
27/100 health