【发布时间】:2020-02-22 03:23:38
【问题描述】:
我目前正在尝试制作一个程序来计算和打印列表中唯一元素的数量。
我的代码:
def solution(N, A):
yee = 1
for i in range(1, len(A)):
j = 0
for j in range(i):
if(A[i] == A[j]):
yee-=1
if(i==j+1):
yee +=1
print(yee)
N = int(input())
A = []
n = 0
for e in input().split():
if(n<N):
A.append(int(e))
n+=1
solution(N, A)
使用包含 (1 2 3 1 4 2 5 6 7 8) 的列表,输出应该是 6。但是,我的程序返回 8。我相信这是由于程序计算了 1 和 2,即使尽管它们在技术上并不是唯一的问题。我确定它很容易修复,但我似乎无法弄清楚。任何帮助将不胜感激!
【问题讨论】:
-
忘了说 N 输入数组 A 中有多少个数字