本文整理汇总了C++中trie::find方法的典型用法代码示例。如果您正苦于以下问题:C++ trie::find方法的具体用法?C++ trie::find怎么用?C++ trie::find使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类trie
的用法示例。
在下文中一共展示了trie::find方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: f
int f(string prefix, string suffix) {
auto p = t_prefix.find(prefix);
reverse(suffix.begin(), suffix.end());
auto q = t_suffix.find(suffix);
if (p == nullptr || q == nullptr) return -1;
auto m = p->get();
auto n = q->get();
int i = m.size()-1;
int j = n.size()-1;
while (i>= 0 && j >= 0 && m[i] != n[j]) {
if (m[i] > n[j]) {
i--;
}
else {
j--;
}
}
if (i >= 0 && j >= 0 && m[i] == n[j])
return m[i];
return -1;
}
示例2: find
void find(string &str, int pos, int bitm, ll lvl = 0){
bitmask |= bitm;
if(bitmask == finalbit){
res = max(res, lvl);
}
if(pos == str.length() or lvl > 60){
return;
}
if(str[pos] == 'a'){
if(a == NULL){
a = new trie;
}
a->find(str, pos + 1, bitm, lvl + 1);
} else {
if(b == NULL){
b = new trie;
}
b->find(str, pos + 1, bitm, lvl + 1);
}
}
示例3: main
int main() {
ios::sync_with_stdio(false);
int n;
cin >> n;
finalbit = (1 << n) - 1;
for(int i = 0; i < n; i++){
string str;
cin >> str;
for(int j = 0; j < str.length(); j++){
root.find(str, j, 1 << i);
}
}
cout << res;
return 0;
}