From 7cb602330bc79aa3514d0dc97e20e0095a462c76 Mon Sep 17 00:00:00 2001 From: Andrii Olieinik Date: Fri, 20 Feb 2026 16:25:17 +0100 Subject: [PATCH] feat: Add initial files of knapsack problem --- .../java/leetcode/houserobber/Camping.java | 34 ++++++++++++++++ .../java/leetcode/houserobber/Product.java | 39 +++++++++++++++++++ .../java/leetcode/houserobber/Solution.java | 14 +++++++ 3 files changed, 87 insertions(+) create mode 100644 src/main/java/com/oleynik/java/leetcode/houserobber/Camping.java create mode 100644 src/main/java/com/oleynik/java/leetcode/houserobber/Product.java create mode 100644 src/main/java/com/oleynik/java/leetcode/houserobber/Solution.java diff --git a/src/main/java/com/oleynik/java/leetcode/houserobber/Camping.java b/src/main/java/com/oleynik/java/leetcode/houserobber/Camping.java new file mode 100644 index 0000000..c4a8e7f --- /dev/null +++ b/src/main/java/com/oleynik/java/leetcode/houserobber/Camping.java @@ -0,0 +1,34 @@ +package com.oleynik.java.leetcode.houserobber; + +import java.util.ArrayList; +import java.util.List; + +public class Camping { + public static void main(String[] args) { + List products = new ArrayList<>(); + products.add(new Product("water", 3, 10)); + products.add(new Product("book", 1, 3)); + products.add(new Product("food", 2, 9)); + products.add(new Product("jacket", 2, 5)); + products.add(new Product("camera", 1, 6)); + } + + public static List getOptimalProductList(int maxVolume, List products) { + List current = new ArrayList<>(); + List previous = new ArrayList<>(); + Product currentProduct; + for (int i = 0; i < products.size(); i++) { + currentProduct = products.get(i); + for (int j = 0; j < maxVolume; j++) { + if (currentProduct.getVolume() < maxVolume) { + continue; + } + if (currentProduct.getVolume() == maxVolume) { + + } + } + + } + } + +} diff --git a/src/main/java/com/oleynik/java/leetcode/houserobber/Product.java b/src/main/java/com/oleynik/java/leetcode/houserobber/Product.java new file mode 100644 index 0000000..1ff55bc --- /dev/null +++ b/src/main/java/com/oleynik/java/leetcode/houserobber/Product.java @@ -0,0 +1,39 @@ +package com.oleynik.java.leetcode.houserobber; + +import java.util.Objects; + +public class Product { + private String name; + private int volume; + private int price; + + public Product(String name, int volume, int price) { + this.name = name; + this.volume = volume; + this.price = price; + } + + public String getName() { + return name; + } + + public int getVolume() { + return volume; + } + + public int getPrice() { + return price; + } + + @Override + public boolean equals(Object o) { + if (o == null || getClass() != o.getClass()) return false; + Product product = (Product) o; + return volume == product.volume && price == product.price && Objects.equals(name, product.name); + } + + @Override + public int hashCode() { + return Objects.hash(name, volume, price); + } +} diff --git a/src/main/java/com/oleynik/java/leetcode/houserobber/Solution.java b/src/main/java/com/oleynik/java/leetcode/houserobber/Solution.java new file mode 100644 index 0000000..c8fd32a --- /dev/null +++ b/src/main/java/com/oleynik/java/leetcode/houserobber/Solution.java @@ -0,0 +1,14 @@ +package com.oleynik.java.leetcode.houserobber; + +public class Solution { +/* public int rob(int[] nums) { + if (nums.length == 1){ + return nums[0]; + } + + for(int i = 0){ + + } + + }*/ +}