1
class Solution {
2
public int calculateSetBits(String s) {
3
int count = 0;
4
for (int i = 0; i < s.length(); i++) {
5
if (s.charAt(i) == '1') count++;
6
}
7
return count;
8
}
9

10
public boolean isPrime(int n) {
11
if (n == 0 || n == 1) return false;
12
for (int i = 2; i <= n / 2; i++) {
13
if (n % i == 0) return false;
14
}
15
// System.out.println(n+" - ");
16
return true;
17
}
18

19
public int countPrimeSetBits(int left, int right) {
20
int count = 0;
21
for (int i = left; i <= right; i++) {
22
String b = Integer.toBinaryString(i);
23

24
int n = calculateSetBits(b);
25

26
if (isPrime(n)) count++;
27
}
28
return count;
29
}
30
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0