Natknąłem się na to pytanie z wywiadu: Biorąc pod uwagę książkę z N rozdziałami (każdy rozdział ma oczywiście inną liczbę stron), jaki jest optymalny sposób na ukończenie całej książki w M dniach z ograniczeniem, że rozdział musi być przeczytany całkowicie w tym samym dniu.Optymalny sposób na przeczytanie książki zawierającej N rozdziałów w dniach M
Przykład:
Chapters[] = {7, 5, 3, 9, 10}
Days = 4
Trzeba czytać:
Chapter1 on Day1
, Chapters2 and Chapter3 on Day2
, Chapter4 on Day3
i Chapter5 on Day4
.
Rozumiem, że należy dążyć do zminimalizowania sumy bezwzględnych różnic całkowitej liczby przeczytanych stron ze średnią liczbą stron, które najlepiej "przeczytać" jednego dnia. Nie jestem jednak w stanie przetłumaczyć tego pomysłu na strukturę danych i algorytm. Każdy inny pomysł lub dane wejściowe są doceniane.
Czy musisz kolejno czytać rozdziały? Znaczenie, po rozdziale 1 powinieneś przeczytać rozdział 2, a nie 5 lub 7. – m3th0dman
@ m3th0dman pytanie jest ważne, jeśli powinno być kolejne, oznacza to, że mamy jeszcze jedno ograniczenie. – erhun
Tak, rozdziały należy czytać ściśle następujące po sobie, a wszystkie rozdziały należy przeczytać pod koniec dnia M. – user1639485