Завантажте застосунок
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Перелічуйте комбінації впорядкованих товарних опцій лише після перевірки ліміту результатів. Випробуйте порожню групу й повторні назви, відхиляючи надлишкові комбінації до виділення вихідного списку.
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Оберіть сумісний endpoint. Доступність інструментів і якість відповідей залежать від налаштованої моделі та сервера.
Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.
Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.
from itertools import product
from math import prod
def variants(groups, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit")
if not groups: return []
if any(len(set(g)) != len(g) for g in groups):
raise ValueError("duplicate option")
if prod(map(len, groups)) > limit:
raise ValueError("too many variants")
return list(product(*groups))Перевірте перед застосуванням. Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.