我在Spyder上使用Python 3.7,并有以下代码
def NailingPlanks(A,B,C):
numInervals = len(A)
maxNails = len(C)
intervals = []
covered = [0]*numInervals
for i in range(numInervals):
interval = []
for j in range(A[i],B[i]+1): interval.append(j)
intervals.append(interval)
nails = []
nailUsed = [False] * maxNails
print('covered = ', covered)
while (0 in covered):
MaxCovered = 0
for i in range(maxNails):
if not nailUsed[i]:
nail = C[i]
cnt = 0
for j in range(numInervals):
if covered[j]==0 and nail in intervals[j]: cnt += 1
if cnt>MaxCovered:
MaxCovered = cnt
maxIndex = i
nails.append(maxIndex)
nailUsed[maxIndex] = True
for j in range(numInervals):
if nail in intervals[j]: covered=1
print('nails=', nails)
return len(nails)
当它运行时,我得到以下输出
Traceback (most recent call last):
File "<ipython-input-492-8fb88643c6e1>", line 1, in <module>
NailingPlanks(A,B,C)
File "<ipython-input-491-4c2e538033de>", line 16, in NailingPlanks
while (0 in covered):
TypeError: argument of type 'int' is not iterable
我在航站楼收到以下信息
not (0 in covered)
Out[494]: False