藏宝图程序可以根据不同的需求和场景进行编写。以下是一个简单的基于子序列匹配的藏宝图程序示例,使用C++编写:
```cpp
include include using namespace std; bool isSubstring(const string& s, const string& t) { int m = s.length(); int n = t.length(); if (m < n) return false; int i = 0, j = 0; while (i < m && j < n) { if (s[i] == t[j]) { j++; } i++; } return j == n; } int main() { string s, t; while (cin >> s >> t) { if (isSubstring(s, t)) { cout << "Yes" << endl; } else { cout << "No" << endl; } } return 0; } ``` 代码解释: 该函数用于判断字符串`t`是否是字符串`s`的子序列。 使用两个指针`i`和`j`分别遍历字符串`s`和`t`。 如果`s[i]`等于`t[j]`,则两个指针都向前移动一位。 如果`s[i]`不等于`t[j]`,则只移动指针`i`。 如果指针`j`到达了字符串`t`的末尾,说明`t`是`s`的子序列。 从标准输入读取两个字符串`s`和`t`。 调用`isSubstring`函数判断`t`是否是`s`的子序列。 根据判断结果输出"Yes"或"No"。 示例输入输出: ``` x.nowcoder.com ooo Yes ``` 这个程序可以处理多个测试用例,并且可以根据需要进行扩展和优化。例如,可以添加更多的输入验证、优化子序列匹配算法等。isSubstring函数
main函数