We are given three ropes with lengths 7₁, n2, and n3. Our goal is to find the smallest value k such that we can fully cover the three ropes with smaller ropes of lengths 1, 2, 3,...,k (one rope from each length). For example, as the figure below shows, when n₁ = 5, n₂ = 7, and n3 = 9, it is possible to cover all three ropes with smaller ropes of lengths 1, 2, 3, 4, 5, 6, that is, the output should be k = 6. Devise a dynamic-programming solution that receives the three values of n₁, n2, and n3 and outputs k. It suffices to show Steps 1 and 2 in the DP paradigm in your solution. In Step 1, you must specify the subproblems, and how the value of the optimal solutions for smaller subproblems can be used to describe those of large subproblems. In Step 2, you must write down a recursive formula for the minimum number of operations to reconfigure. Hint: You may assume the value of k is guessed as kg, and solve the decision problem that asks whether ropes of lengths n₁, 72, n3 can be covered by ropes of lengths 1,2,..., kg. Provided with an algorithm for the decision problem, you can find the best value of k using a binary search to find the smallest ka for which the answer to the decision problem is 'yes'.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 18SA
icon
Related questions
Question
We are given three ropes with lengths n₁, n2, and n3. Our goal is to find the smallest value k
such that we can fully cover the three ropes with smaller ropes of lengths 1,2,3,...,k (one
rope from each length). For example, as the figure below shows, when n₁ = 5, n₂ 7, and
n3 = 9, it is possible to cover all three ropes with smaller ropes of lengths 1, 2, 3, 4, 5, 6, that
is, the output should be k = 6.
=
Devise a dynamic-programming solution that receives the three values of n₁, n2, and n3
and outputs k. It suffices to show Steps 1 and 2 in the DP paradigm in your solution. In
Step 1, you must specify the subproblems, and how the value of the optimal solutions for
smaller subproblems can be used to describe those of large subproblems. In Step 2, you must
write down a recursive formula for the minimum number of operations to reconfigure.
Hint: You may assume the value of k is guessed as kg, and solve the decision problem
that asks whether ropes of lengths n₁, n2, n3 can be covered by ropes of lengths 1,2,..., kg.
Provided with an algorithm for the decision problem, you can find the best value of k using
a binary search to find the smallest ka for which the answer to the decision problem is 'yes'.
3
Transcribed Image Text:We are given three ropes with lengths n₁, n2, and n3. Our goal is to find the smallest value k such that we can fully cover the three ropes with smaller ropes of lengths 1,2,3,...,k (one rope from each length). For example, as the figure below shows, when n₁ = 5, n₂ 7, and n3 = 9, it is possible to cover all three ropes with smaller ropes of lengths 1, 2, 3, 4, 5, 6, that is, the output should be k = 6. = Devise a dynamic-programming solution that receives the three values of n₁, n2, and n3 and outputs k. It suffices to show Steps 1 and 2 in the DP paradigm in your solution. In Step 1, you must specify the subproblems, and how the value of the optimal solutions for smaller subproblems can be used to describe those of large subproblems. In Step 2, you must write down a recursive formula for the minimum number of operations to reconfigure. Hint: You may assume the value of k is guessed as kg, and solve the decision problem that asks whether ropes of lengths n₁, n2, n3 can be covered by ropes of lengths 1,2,..., kg. Provided with an algorithm for the decision problem, you can find the best value of k using a binary search to find the smallest ka for which the answer to the decision problem is 'yes'. 3
Expert Solution
steps

Step by step

Solved in 5 steps with 16 images

Blurred answer
Knowledge Booster
Single source shortest path
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Operations Research : Applications and Algorithms
Operations Research : Applications and Algorithms
Computer Science
ISBN:
9780534380588
Author:
Wayne L. Winston
Publisher:
Brooks Cole