aboutsummaryrefslogtreecommitdiff
path: root/challenge-192/vamsi-meenavilli/java/ch_1.java
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-192/vamsi-meenavilli/java/ch_1.java')
-rw-r--r--challenge-192/vamsi-meenavilli/java/ch_1.java43
1 files changed, 43 insertions, 0 deletions
diff --git a/challenge-192/vamsi-meenavilli/java/ch_1.java b/challenge-192/vamsi-meenavilli/java/ch_1.java
new file mode 100644
index 0000000000..cf31964680
--- /dev/null
+++ b/challenge-192/vamsi-meenavilli/java/ch_1.java
@@ -0,0 +1,43 @@
+import org.junit.jupiter.api.Test;
+import java.util.HashMap;
+import java.util.Map;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+/*
+Week 192:
+
+ https://theweeklychallenge.org/blog/perl-weekly-challenge-192
+
+ Task 1: Binary Flip
+ You are given a positive integer, $n.
+ Write a script to find the binary flip.
+
+*/
+public class main {
+ public static Map<Character, Character> binaryNumberMap = new HashMap();
+
+ static {
+ binaryNumberMap.put('0', '1');
+ binaryNumberMap.put('1', '0');
+ }
+
+ public static void main(String[] args) {}
+
+ public static Integer binaryFlip(Integer number) {
+ var flippedBinaryNumber = new StringBuilder();
+
+ for (char c : Integer.toBinaryString(number).toCharArray()) {
+ flippedBinaryNumber.append(binaryNumberMap.get(c));
+ }
+
+ return Integer.parseInt(flippedBinaryNumber.toString(), 2);
+ }
+
+ @Test
+ public void binaryFlipTest() {
+ assertEquals(binaryFlip(5), 2, "Example 1 Failed.");
+ assertEquals(binaryFlip(4), 3, "Example 2 Failed.");
+ assertEquals(binaryFlip(6), 1, "Example 3 Failed.");
+ }
+}