Я применяю метод грубой силы, пытаясь найти комбинацию расширения головоломки.
Я пытаюсь получить большое количество комбинаций, а затем проверить каждую комбинацию, чтобы увидеть, соответствуют ли они определенным критериям. Я генерирую комбинации, используя превосходные itertools Python, по сути, это дает мне итератор, который я могу просмотреть и протестировать каждую из них.
Это быстро возвращается и дает мне 91390 комбинаций для проверки:
itertools.combinations(range(1, 40), 4)
Это занимает пару минут и дает мне 198792594 комбинаций для тестирования:
itertools.combinations(range(1, 122), 5)
Когда я перейду на следующий уровень, мне нужен ответ на это:
itertools.combinations(range(1, 365), 6)
Когда я попадаю в 6-сторонние комбинации сета из 364... это занимает очень много времени. ВОЗРАСТ. Я по своей сути прошу много комбинаций? Как это масштабируется?