Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,83 @@
|
|||
package hu.pj.alg.test;
|
||||
|
||||
import hu.pj.alg.BoundedKnapsack;
|
||||
import hu.pj.obj.Item;
|
||||
import java.util.*;
|
||||
import java.text.*;
|
||||
|
||||
public class BoundedKnapsackForTourists {
|
||||
public BoundedKnapsackForTourists() {
|
||||
BoundedKnapsack bok = new BoundedKnapsack(400); // 400 dkg = 400 dag = 4 kg
|
||||
|
||||
// making the list of items that you want to bring
|
||||
bok.add("map", 9, 150, 1);
|
||||
bok.add("compass", 13, 35, 1);
|
||||
bok.add("water", 153, 200, 3);
|
||||
bok.add("sandwich", 50, 60, 2);
|
||||
bok.add("glucose", 15, 60, 2);
|
||||
bok.add("tin", 68, 45, 3);
|
||||
bok.add("banana", 27, 60, 3);
|
||||
bok.add("apple", 39, 40, 3);
|
||||
bok.add("cheese", 23, 30, 1);
|
||||
bok.add("beer", 52, 10, 3);
|
||||
bok.add("suntan cream", 11, 70, 1);
|
||||
bok.add("camera", 32, 30, 1);
|
||||
bok.add("t-shirt", 24, 15, 2);
|
||||
bok.add("trousers", 48, 10, 2);
|
||||
bok.add("umbrella", 73, 40, 1);
|
||||
bok.add("waterproof trousers", 42, 70, 1);
|
||||
bok.add("waterproof overclothes", 43, 75, 1);
|
||||
bok.add("note-case", 22, 80, 1);
|
||||
bok.add("sunglasses", 7, 20, 1);
|
||||
bok.add("towel", 18, 12, 2);
|
||||
bok.add("socks", 4, 50, 1);
|
||||
bok.add("book", 30, 10, 2);
|
||||
|
||||
// calculate the solution:
|
||||
List<Item> itemList = bok.calcSolution();
|
||||
|
||||
// write out the solution in the standard output
|
||||
if (bok.isCalculated()) {
|
||||
NumberFormat nf = NumberFormat.getInstance();
|
||||
|
||||
System.out.println(
|
||||
"Maximal weight = " +
|
||||
nf.format(bok.getMaxWeight() / 100.0) + " kg"
|
||||
);
|
||||
System.out.println(
|
||||
"Total weight of solution = " +
|
||||
nf.format(bok.getSolutionWeight() / 100.0) + " kg"
|
||||
);
|
||||
System.out.println(
|
||||
"Total value = " +
|
||||
bok.getProfit()
|
||||
);
|
||||
System.out.println();
|
||||
System.out.println(
|
||||
"You can carry te following materials " +
|
||||
"in the knapsack:"
|
||||
);
|
||||
for (Item item : itemList) {
|
||||
if (item.getInKnapsack() > 0) {
|
||||
System.out.format(
|
||||
"%1$-10s %2$-23s %3$-3s %4$-5s %5$-15s \n",
|
||||
item.getInKnapsack() + " unit(s) ",
|
||||
item.getName(),
|
||||
item.getInKnapsack() * item.getWeight(), "dag ",
|
||||
"(value = " + item.getInKnapsack() * item.getValue() + ")"
|
||||
);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
System.out.println(
|
||||
"The problem is not solved. " +
|
||||
"Maybe you gave wrong data."
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
new BoundedKnapsackForTourists();
|
||||
}
|
||||
} // class
|
||||
Loading…
Add table
Add a link
Reference in a new issue