Решението со мемоизација со матрица ќе го надмине меморискиот лимит. Во најлош случај, ќе имаме 1*10^8 полиња, ако работиме со int матрица секое поле зафаќа 4 бајти меморија, па добиваме вкупна потрошена меморија од над ~381.5 мегабајти. Исто така се приметува дека за празна подматрица (односно подматрица во која нема погодувања) е многу лесно да се најдат сите можни комбинации, тоа може да се заврши во O(1) време со едноставна формула. Според ова, мојата идеја е да се подели матрицата на разделени интервали и да се најдат посебно за нив сите можни комбинации, па да се соберат. Секако, нема да ја чуваме во меморија целата N*M матрица, туку одвоените интервали. Останува уште да се напише кодот.
This message was edited 1 time. Last update was at 29/02/2016 14:41:50
|