链接:https://www.nowcoder.com/acm/contest/190/F
来源:牛客网

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld

题目描述

Bob在学习了DFS后,自己又发明了一种新的搜(luan)索(gao)方法,叫做BFS(Bobby First Search)。

这种搜索被定义为:在一个字符串中,从前向后查找第一个子串"Bob"出现的位置。(不区分大小写)

输入描述

输入一个不含空格的字符串S(可能含有大小写字母,数字)。(1 ≤ |S| ≤ 100)

输出描述

输出一个数字,表示"Bob"第一次出现的位置(下标从0开始)。 如果没有出现,则输出"-1"。

样例输入

Bobob
bobby
BFS

样例输出

0
0
-1

解题思路

遍历一遍就行了。

#include <iostream>
using namespace std;
int main()
{
    int i, len;
    string str;
    while (cin >> str)
    {
        len = str.length() - 2;
        for (i = 0; i < len; i++)
            if ((str[i] == 'b' || str[i] == 'B') && (str[i + 1] == 'o' || str[i + 1] == 'O') && (str[i + 2] == 'b' || str[i + 2] == 'B'))
                break;
        if (i >= len)
            puts("-1");
        else cout << i << endl;
    }
    return 0;
}