https://codeanddebug.in/blog/0-1-knapsack-problem/