Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Write code in Java please The purpose of this problem is to gain familiarity with stacks and queues. You have three jugs that can hold

Write code in Java please

The purpose of this problem is to gain familiarity with stacks and queues. You have three jugs that can hold c1, c2, and c3 liters of water, respectively. Initially, jug 1 is full and the other two jugs are empty. You can repeat the following procedure any number of times: Choose two of the jugs and pour the contents of one into the other until either the first is empty or the second is full. Your goal is to end up with exactly d liters in one of the jugs. Write a program called Transfer.java to determine the transfers required to reach the goal. The input is a single line containing four integers between 2 and 100 (inclusive) representing c1, c2, c3, and d. The output is a minimal sequence of jug contents, starting with the initial contents and ending with one of the jugs containing d liters. Each line of the output should consist of 3 integers separated by spaces. If no solution exists, then your program should produce no output. For example, if the input is 20 5 3 4 then a valid output is 20 0 0 15 5 0 15 2 3 18 2 0 18 0 2 13 5 2 13 4 3 There may be other solutions, but none with fewer transfers (6) than this one. This test case is from the movie Die hard: with a vengeance; https://www.youtube.com/watch?v=2vdF6NASMiE You may assume that all input parameters are between 1 and 100 inclusive.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions