From 9348872ce29f4a90c7afd236f36ddeb74776c6f7 Mon Sep 17 00:00:00 2001 From: Vitali Plagov Date: Tue, 23 Jan 2024 23:35:06 +0200 Subject: [PATCH] Problem 29 --- .idea/misc.xml | 2 +- .../problems/problems026to050/Problem029.java | 25 +++++++++++++++++++ .../problems026to050/Problem029Test.java | 13 ++++++++++ 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 src/main/java/net/projecteuler/problems/problems026to050/Problem029.java create mode 100644 src/test/java/net/projecteuler/problems/problems026to050/Problem029Test.java diff --git a/.idea/misc.xml b/.idea/misc.xml index fe0b0da..715d4ec 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -7,4 +7,4 @@ - \ No newline at end of file + diff --git a/src/main/java/net/projecteuler/problems/problems026to050/Problem029.java b/src/main/java/net/projecteuler/problems/problems026to050/Problem029.java new file mode 100644 index 0000000..39e2dc3 --- /dev/null +++ b/src/main/java/net/projecteuler/problems/problems026to050/Problem029.java @@ -0,0 +1,25 @@ +package net.projecteuler.problems.problems026to050; + +import java.math.BigInteger; +import java.util.HashSet; + +public class Problem029 { + + public int solve() { + var result = new HashSet(); + + var min = 2; + var max = 100; + + for (var a = min; a <= max; a++) { + var base = BigInteger.valueOf(a); + for (var b = min; b <= max; b++) { + var pow = base.pow(b); + result.add(pow); + } + } + + return result.size(); + } + +} diff --git a/src/test/java/net/projecteuler/problems/problems026to050/Problem029Test.java b/src/test/java/net/projecteuler/problems/problems026to050/Problem029Test.java new file mode 100644 index 0000000..b2c7b5a --- /dev/null +++ b/src/test/java/net/projecteuler/problems/problems026to050/Problem029Test.java @@ -0,0 +1,13 @@ +package net.projecteuler.problems.problems026to050; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class Problem029Test { + + @Test + void solve() { + assertEquals(9183, new Problem029().solve()); + } +}