0

这个问题是关于集合的,这里是一个整数数组 arr。还有不相交的集合 A 和 B,每个集合都包含整数。你喜欢集合 A 中的所有整数,不喜欢集合 B 中的所有整数。你的初始幸福感为 0。对于数组中的每个整数,如果 i 属于 A,则将幸福感加 1。如果我属于B,那么你的幸福感就加-1。否则,你的幸福不会改变。最后输出你最后的幸福。

注意:A 和 B 是集合,它们没有重复的元素。但是,该数组可能包含重复元素。

在下面的代码中,我尝试输入 n,m

k = list(map(str,input().split(' ')))
n,m =k

arr=[]
arr = [int(i) for i in input().split()]
arr1 = list( dict.fromkeys(arr) )
A=set(int(i) for i in input().split())
B=set(int(i) for i in input().split())

a=len(set(arr1).intersection(A))
b=len(set(arr1).intersection(B))
print(a-b)

输入格式

第一行包含整数 n 和 m,并用空格分隔。第二行包含 n 个整数,即数组的元素。第三行和第四行分别包含 m 个整数 A 和 B。

Input 
**1**                **2**
3 2                 13 4
1 5 3               1 7 8 5 3 7 9 4 9 8 2 1 4
3 1                 1 5 3 9
5 7                 7 4 2 8
Output             
1                   0

上面的代码适用于小输入测试用例,但它导致其余的错误答案。 按照实际问题陈述的链接

这是我使用的代码,但它无法清除大多数测试用例。需要帮忙。

4

0 回答 0