[编程题]BFS
  • 热度指数:16417 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}Bob 在学习了 DFS 后,自己又发明了一种新的搜(luan)索(gao)方法,叫做 BFS(Bob First Search)。
\hspace{15pt}这种搜索被定义为:在一个字符串中,从前向后查找子串 "Bob" 第一次出现的位置(不区分大小写)。

输入描述:
\hspace{15pt}在一行输入一个不含空格的字符串 S,其长度为 |S|,满足 \left(1 \leqq |S| \leqq 100\right)


输出描述:
\hspace{15pt}输出一个整数,表示子串 "Bob" 第一次出现的位置(下标从 0 开始)。 
\hspace{15pt}如果子串未出现,则输出 -1
示例1

输入

Bobob

输出

0

说明

字符串 "Bobob" 中开头即出现 "Bob",起始索引为 0
示例2

输入

bobby

输出

0

说明

字符串 "bobby" 中开头即出现 "bob",起始索引为 0
示例3

输入

body

输出

-1

说明

字符串 "body" 中不包含子串 "Bob"(忽略大小写),因此输出 -1
n = input().strip()
result = -1
for i in range(len(n) - 2):
    k = n[i:i+3]
    c = k.lower()
    if c == "bob":
        result = i 
        break 
print(result)

发表于 2025-11-22 22:43:06 回复(0)
s = input().strip()
i = 0
found = False
while i <= len(s) - 3:
    substring = s[i : i + 3]
    if substring.lower() == "bob":
        print(i)
        found = True
        break
    i += 1

if not found:
    print(-1)
发表于 2025-09-28 15:40:53 回复(0)
s = input()
s = s.lower()
b = 'Bob'.lower()
c = 0
if b in s:
    s1 = s.replace(b,'*')
    for i in s1:
        if i == '*':
            print(c)
            break
        else:
            c += 1
else:
    print(-1)


# s = input()
# s = s.lower()
# b = 'Bob'.lower()
# if b in s:
#     s1 = s.replace(b,'*')
#     for index,value in enumerate(s1):
#         if value == '*':
#             print(index)
#             break
# else:
#     print(-1)


发表于 2025-09-26 12:13:07 回复(0)
S = input()
print(S.lower().find('bob'))
//
S = input()

for i in range(len(S)-2):
    if S[i].lower() == 'b'and S[i+1].lower() == 'o' and S[i+2].lower() == 'b':
        print (i)
        break
else:
    print(-1)

发表于 2025-07-24 02:10:49 回复(0)
s = input().lower()
print(s.find('bob'))
发表于 2025-07-22 20:00:24 回复(0)
# 读取输入字符串
s = str(input())

# 将整个字符串和子串都转换为小写
sl = s.lower()
s2 = "Bob".lower()

# 查找子串第一次出现的位置
position = sl.find(s2)

print(position)

发表于 2025-06-08 13:38:32 回复(0)