diff --git a/src/main/java/com/fishercoder/solutions/_693.java b/src/main/java/com/fishercoder/solutions/_693.java index 397733dd1a..093b85740c 100644 --- a/src/main/java/com/fishercoder/solutions/_693.java +++ b/src/main/java/com/fishercoder/solutions/_693.java @@ -31,13 +31,20 @@ */ public class _693 { - public boolean hasAlternatingBits(int n) { - String binaryStr = Integer.toBinaryString(n); - for (int i = 1; i < binaryStr.length(); i++) { - if (binaryStr.charAt(i - 1) == binaryStr.charAt(i)) { - return false; + public static class Solution1 { + public boolean hasAlternatingBits(int n) { + String binaryStr = Integer.toBinaryString(n); + for (int i = 1; i < binaryStr.length(); i++) { + if (binaryStr.charAt(i - 1) == binaryStr.charAt(i)) { + return false; + } } + return true; + } + } + public static class Solution2 { + public boolean hasAlternatingBits_oneline(int n) { + return Integer.bitCount(((n >> 1) ^ n) + 1) == 1; } - return true; } }