2016-07-30 30 views
-1

这是HackerRank子集在Python输出错误 - HackerRank

一个问题,你给出两套AB

您的工作是找到是否集A是集B的子集。

如果设置为A是集合子集B print True。

如果设置为A不是集合的子集B print false。


输入格式:

第一行将包含测试用例T数。

每个测试用例的第一行包含集合A中的元素数。

每个测试用例的第二行包含集合A的空格分隔元素。

每个测试用例的第三行包含集合B中的元素数。

每个测试用例的第四行包含集合B的空格分隔元素。


输出格式:

输出True或False用于在不同的行的每个测试用例。


样品输入:

3 
5 
1 2 3 5 6 
9 
9 8 5 6 3 2 1 4 7 
1 
2 
5 
3 6 5 4 1 
7 
1 2 3 5 6 8 9 
3 
9 8 2 

样本输出:

True 
False 
False 

我这个编码,它工作得很好。输出和预期输出匹配,但输出声称是错误的。我甚至检查是否因为任何尾随的空白字符。我哪里错了?

for i in range(int(raw_input())): 
    a = int(raw_input()); A = set(raw_input().split()) 
    b = int(raw_input()); B = set(raw_input().split()) 

    if(b<a): 
     print "False" 
    else: 
     print A.issubset(B) 

enter image description here

回答

1

问题规范是:

注:4行以上将导致零分。空行不会被计算在内。

您的解决方案使用7行,因此它算作失败。

+1

糟糕!你是对的。现在只用'print A.issubset(B)'工作 –