From cdc995b6ac9e1f117fdf3ad89511d538b367b249 Mon Sep 17 00:00:00 2001 From: ziameraj16 Date: Tue, 25 May 2021 11:11:26 +0100 Subject: Java solution for Next Palindrome Number --- challenge-114/ziameraj16/README.md | 51 ++++++---------------- .../ziameraj16/java/NextPalindromeNumber.java | 30 +++++++++++++ 2 files changed, 43 insertions(+), 38 deletions(-) create mode 100644 challenge-114/ziameraj16/java/NextPalindromeNumber.java diff --git a/challenge-114/ziameraj16/README.md b/challenge-114/ziameraj16/README.md index 522cc9b303..336ee591a8 100644 --- a/challenge-114/ziameraj16/README.md +++ b/challenge-114/ziameraj16/README.md @@ -1,49 +1,24 @@ -# Canonical Path +# Next Palindrome Number ## Java Solution To compile the code run ```java -javac CanonicalPath.java +javac NextPalindromeNumber.java ``` To run ```java -java CanonicalPath +java NextPalindromeNumber ``` ### Example ```bash -/perlweeklychallenge-club/challenge-112/ziameraj16/java$ java CanonicalPath -Enter a string -/a/ -/a -/perlweeklychallenge-club/challenge-112/ziameraj16/java$ java CanonicalPath -Enter a string -/a/b//c/ -/a/b/c -/perlweeklychallenge-club/challenge-112/ziameraj16/java$ java CanonicalPath -Enter a string -/a/b/c/../.. -/a -``` - -# Climb Stairs -## Java Solution - -To compile the code run -```java -javac ClimbStairs.java -``` -To run -```java -java ClimbStairs -``` -### Example -```bash -/perlweeklychallenge-club/challenge-112/ziameraj16/java$ java ClimbStairs -Enter total number of stairs -3 -3 -/perlweeklychallenge-club/challenge-112/ziameraj16/java$ java ClimbStairs -Enter total number of stairs -4 -5 +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ javac NextPalindromeNumber.java +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ java NextPalindromeNumber +Enter the number +1234 +1331 +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ java NextPalindromeNumber +Enter the number +999 +1001 +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ ``` diff --git a/challenge-114/ziameraj16/java/NextPalindromeNumber.java b/challenge-114/ziameraj16/java/NextPalindromeNumber.java new file mode 100644 index 0000000000..9c90da4d79 --- /dev/null +++ b/challenge-114/ziameraj16/java/NextPalindromeNumber.java @@ -0,0 +1,30 @@ +import java.util.Scanner; + +public class NextPalindromeNumber { + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + System.out.println("Enter the number"); + int number = scanner.nextInt(); + System.out.println(findNextPalindromeNumber(number)); + } + + public static int findNextPalindromeNumber(int n) { + while (true) { + if (isPalindrome(++n)) { + return n; + } + } + } + + private static boolean isPalindrome(int number) { + String numberAsString = String.valueOf(number); + for (int i = 0; i < numberAsString.length() / 2; i++) { + if (numberAsString.charAt(i) != numberAsString.charAt(numberAsString.length() - i - 1)) { + return false; + } + } + return true; + + } +} -- cgit From ac2f9a029e31fbcdb2c48ce60b3993199de1d1b4 Mon Sep 17 00:00:00 2001 From: ziameraj16 Date: Tue, 25 May 2021 11:48:09 +0100 Subject: Java solution for Higher Number Set Bits --- challenge-114/ziameraj16/README.md | 25 +++++++++++++++++++++- .../ziameraj16/java/HigherIntegerSetBits.java | 21 ++++++++++++++++++ 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 challenge-114/ziameraj16/java/HigherIntegerSetBits.java diff --git a/challenge-114/ziameraj16/README.md b/challenge-114/ziameraj16/README.md index 336ee591a8..d066640c97 100644 --- a/challenge-114/ziameraj16/README.md +++ b/challenge-114/ziameraj16/README.md @@ -20,5 +20,28 @@ Enter the number Enter the number 999 1001 -/perlweeklychallenge-club/challenge-114/ziameraj16/java$ +``` + +# Higher Integer Sets Bits +## Java Solution + +To compile the code run +```java +javac HigherIntegerSetBits.java +``` +To run +```java +java HigherIntegerSetBits +``` +### Example +```bash +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ javac HigherIntegerSetBits.java +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ java HigherIntegerSetBits +Enter the number +3 +5 +/perlweeklychallenge-club/challenge-114/ziameraj16/java$ java HigherIntegerSetBits +Enter the number +12 +17 ``` diff --git a/challenge-114/ziameraj16/java/HigherIntegerSetBits.java b/challenge-114/ziameraj16/java/HigherIntegerSetBits.java new file mode 100644 index 0000000000..4d8f03fa63 --- /dev/null +++ b/challenge-114/ziameraj16/java/HigherIntegerSetBits.java @@ -0,0 +1,21 @@ +import java.util.Scanner; + +public class HigherIntegerSetBits { + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + System.out.println("Enter the number"); + int number = scanner.nextInt(); + System.out.println(findNextNumberWithSameOnes(number)); + + } + + public static int findNextNumberWithSameOnes(int n) { + long value = Integer.toBinaryString(n).chars().filter(ch -> ch == '1').count(); + while(true) { + if (value == Integer.toBinaryString(++n).chars().filter(ch -> ch == '1').count()) { + return n; + } + } + } +} -- cgit