def findCoins(coins, Money):
coins_used = []
for coin in coins:
while Money >= coin:
coins_used.append(coin)
Money -= coin
return coins_used
coins = [100, 50, 20, 10, 5, 2, 1] #货币种类,单位相同
M = int(input()) #输入换算的金额
coins_needed = find_coins(coins, M)
result = [(c,coins_needed.count(c)) for c in coins]
result = [x for x in result if x[1] > 0]
2分
登录后查看选项
06有关下面Python的代码,错误的是( )。
def count_if(iterData,*,key=None):
if key == None:
return len(iterData)
Count = 0
for i in iterData:
Count += bool(key(i))
return Count
2分
登录后查看选项
07在下面的Python代码中,最后一行用于输出小于0的list,横线处不能填入的代码是( )。
def LT(a, b):
return a < b
lstData = list(range(-100,100))
print(___________________________)
srcStr = input()
symList = [] #保存回文子字符串
for i in range(len(srcStr)):
for j in range(i + 2, len(srcStr) + 1):
subStr = ___________
if subStr == _____________:
symList.append(subStr)
for i in sorted(symList, key = lambda x: len(x)):
print(i)
2分
登录后查看选项
10上面代码的时间复杂度是( )。2分
登录后查看选项
11有关下面Python代码的说法,错误的是( )。
def Sort(lst):
for i in range(1, len(lst)):
key = lst[i]
j = i - 1
while j >= 0 and key < lst[j]:
lst[j + 1] = lst[j]
j -= 1
lst[j + 1] = key
lst = [4,5,13,2,7,10,1,3,8,11,6,9,12]
lst = Sort(lst)
print("sorted list:", lst)
def nGram(S,n):
Result = {}#保存截取字符串及其数量
for i in range(________________):
nChar = ________________
Result[nChar] = Result.get(nChar,0) + 1
return Result
2分
登录后查看选项
13上题代码的时间复杂度是( )。2分
登录后查看选项
14下面是埃氏素数筛的Python实现,横线上应填入的代码是( )。
def listPrime(N):
primeList = list(range(N+1))
primeList[0] = primeList[1] = False
for i in range(2,int(N ** 0.5) + 1):
if primeList[i] != False:
for j in range(_____________):
primeList[j] = False
return [x for x in primeList if x != False]