Алгоритм различных комбинаций (Candy Splitting)

Вчера я участвовал в конкурсе Google code jam. Была проблема с раскалыванием конфет. http://code.google.com/codejam/contest/dashboard?c=975485#s=p2

Я разработал алгоритм, который в основном пробует все различные комбинации для стопки Патрика и стопки Шона, проверяет, есть ли у них то же самое значение Патрика, и, наконец, выберите комбинации, которые максимизируют долю Шона. Алгоритм хорошо работал для небольшого импут-файла. Для большого у меня проблемы с памятью, и результат так и не появился. Я считаю, что есть другой подход к этой проблеме, который не требует рассмотрения всех комбинаций. Может ли кто-нибудь помочь?

6
задан Martijn Pieters 21 January 2015 в 19:57
поделиться