diff --git "a/leetcode3/\354\227\274\355\230\234\354\240\225/3827. Count Monobit Integers.java" "b/leetcode3/\354\227\274\355\230\234\354\240\225/3827. Count Monobit Integers.java" new file mode 100644 index 00000000..438d7e45 --- /dev/null +++ "b/leetcode3/\354\227\274\355\230\234\354\240\225/3827. Count Monobit Integers.java" @@ -0,0 +1,14 @@ +// 0을 제외하고 1, 11, 111, 1111... (2^1 - 1, 2^2 - 1, 2^3 -1) +// o(log n) + +class Solution { + public int countMonobit(int n) { + int cnt = 1; // 0은 무조건 포함 + int num = 1; + while (num <= n) { + cnt++; + num = num * 2 + 1; + } + return cnt; + } +}