解题思路:
(1)右移+查找
class Solution {
public:
string helper(int x) {
string str="";
while(x!=0) {
if(x%2==1) str='1'+str;
else str='0'+str;
x/=2;
}
return str;
}
bool queryString(string S, int N) {
for(int i=1;i<=N;i++) {
if(S.find(helper(i))==S.npos) return false;
}
return true;
}
};

该博客探讨了一种基于右移和查找的算法实现。在`queryString`函数中,对于给定的整数N,它检查从1到N的所有整数的二进制表示是否都作为子串存在于输入字符串S中。如果所有整数的二进制形式都能找到,则返回true,否则返回false。这个算法涉及到字符串处理和二进制转换操作。

被折叠的 条评论
为什么被折叠?



