给定一个二进制字符串 S
(一个仅由若干 '0' 和 '1' 构成的字符串)和一个正整数 N
,如果对于从 1
到 N
的每个整数 X
,其二进制表示都是 S
的子串,就返回 true
,否则返回 false
。
示例 1:
输入:S = "0110", N = 3 输出:true
示例 2:
输入:S = "0110", N = 4 输出:false
public boolean queryString(String S, int N){
for(int i=1;i<=N;i++){
int sum=0;
String result = "";
for(int j = i;j>=1;j=j/2){
if (j % 2 == 0) {
sum = 0;
}else {
sum = 1;
}
result = sum + result;
}
if(!S.contains(result)){
return false;
}
}
return true;
}