我正在解决codechef中的问题
Chef有一系列N个数字。如果序列包含他最喜欢的序列作为子串,他更喜欢序列。 给定序列和他最喜欢的序列(F)检查最喜欢的序列是否包含在序列中
输入
第一行将包含测试用例的数量并遵循 通过案件。每个测试用例由四行组成:长度为 序列,序列N,F的长度和序列F
输出
打印"是"如果序列包含喜欢的序列int 否则打印"否"约束
1<=T<=10
1 1
Input:
2
6
1 2 3 4 5 6
3
2 3 4
6
22 5 6 33 1 4
2
4 15
Output:
Yes
No
我写到这个
`
for _ in xrange(int(raw_input())):
raw_input()
s = raw_input()
raw_input()
f = raw_input()
print "Yes" if f in s else "No"`
它会返回正确的结果(据我所检查),平地机返回错误。为什么这是错的?
答案 0 :(得分:1)
想象一下,序列为'12 3 4'
且子序列为'2 3 4'
的场景。由于True
为'2 3 4' in '12 3 4'
,您的代码将返回True
。在进行比较之前,您需要将序列和子序列转换为整数。