From ddb094919b8af4b1268e118fa3e33868c30f4386 Mon Sep 17 00:00:00 2001 From: Jigyasa G Date: Fri, 18 Oct 2019 11:43:20 +0530 Subject: [PATCH] Adding doctests for fractional_knapsack.py (#1331) * Adding doctests for fractional_knapsack.py * Update fractional_knapsack.py --- dynamic_programming/fractional_knapsack.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dynamic_programming/fractional_knapsack.py b/dynamic_programming/fractional_knapsack.py index 881b6a396..728cdeb00 100644 --- a/dynamic_programming/fractional_knapsack.py +++ b/dynamic_programming/fractional_knapsack.py @@ -3,6 +3,10 @@ from bisect import bisect def fracKnapsack(vl, wt, W, n): + """ + >>> fracKnapsack([60, 100, 120], [10, 20, 30], 50, 3) + 240.0 + """ r = list(sorted(zip(vl, wt), key=lambda x: x[0] / x[1], reverse=True)) vl, wt = [i[0] for i in r], [i[1] for i in r] @@ -16,5 +20,7 @@ def fracKnapsack(vl, wt, W, n): else sum(vl[:k]) ) +if __name__ == "__main__": + import doctest -print("%.0f" % fracKnapsack([60, 100, 120], [10, 20, 30], 50, 3)) + doctest.testmod()