為鼓勵(lì)綠色出行,某市推出了優(yōu)惠方案:乘一次地鐵后可以獲得一張優(yōu)惠券,在有效期45分鐘內(nèi)(含)可免費(fèi)搭乘一次公交車。有效期指乘公交車與乘地鐵的開(kāi)始時(shí)刻之差。搭乘公交車時(shí),可以使用優(yōu)惠券則一定會(huì)使用,如果有多張優(yōu)惠券滿足條件,則優(yōu)先消費(fèi)獲得最早的優(yōu)惠券。有人用Python編寫(xiě)程序計(jì)算出行的費(fèi)用。他的某次出行過(guò)程如圖a所示,程序運(yùn)行結(jié)果如圖b所示。
請(qǐng)回答下列問(wèn)題:
(1)請(qǐng)?jiān)跈M線處填入合適的代碼。
def Ctime(t):
#自定義函數(shù)Ctime功能為將時(shí)間轉(zhuǎn)為分鐘計(jì)存入變量s,代碼略。
return s
'''
讀取出行記錄,存儲(chǔ)在列表a中,a[i][0]、a[i][1]、a[i][2]依次存儲(chǔ)交通工具類型、票價(jià)、乘坐開(kāi)始時(shí)刻。交通工具類型a[i][0]值為0表示地鐵,1表示公交車。代碼略。
'''
n=len(a)
for i in range(n):
a[i][2]=Ctime(a[i][2])
for i in range(n-1):
for j in range(n-1,i,-1):
a[j],a[j-1]=a[j-1],a[j]
#輸出出行記錄,代碼略。
total=0
head=tail=0
q=[-1]*n
for i in range(n):
if a[i][0]==0:
total+=a[i][1]
q[tail]=a[i][2]q[tail]=a[i][2]
tail+=1
else:
while head<tail and q[head]<a[i][2]-45:
head+=1
if head==tail或q[head]==-1head==tail或q[head]==-1:
total+=a[i][1]
else:
print(a[i][2],“時(shí)刻使用了優(yōu)惠券“)
head+=1head+=1
print(“總共花費(fèi)為:“,total)
(2)程序中加框處代碼有錯(cuò),請(qǐng)改正。 a[j][2]<a[j-1][2]a[j][2]<a[j-1][2]
(3)該程序主要應(yīng)用的數(shù)據(jù)結(jié)構(gòu)類型是 隊(duì)列隊(duì)列(選填:隊(duì)列/棧/鏈表/二叉樹(shù))。
【考點(diǎn)】循環(huán)語(yǔ)句.
【答案】q[tail]=a[i][2];head==tail或q[head]==-1;head+=1;a[j][2]<a[j-1][2];隊(duì)列
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書(shū)面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:3引用:1難度:0.3
相似題
-
1.用VB編寫(xiě)程序:求滿足不等式“22+42+62+......+n2<1500”中n的最大值。VB程序如下所示,則橫線處應(yīng)填寫(xiě)的語(yǔ)句為
Dim s As Integer,i As Integer
i=2
s=i*i
Do While s<1500
______
s=s+i*i
Loop
i=i-2
Print i發(fā)布:2025/1/2 12:0:1組卷:0引用:1難度:0.5 -
2.執(zhí)行下面程序段后,變量a的值為( )
For i=1 To 3
For j=1 To i
For k=j To 3
a=a+1
Next k
Next j
Next i發(fā)布:2025/1/2 12:0:1組卷:0引用:0難度:0.5 -
3.現(xiàn)有5項(xiàng)工作分給5人完成,每人只能從事一項(xiàng),每項(xiàng)只能由一人完成。每人完成各項(xiàng)工作效益如圖a所示,如何分配工作使總效益值最高?
算法思路:用5位各不相同的5進(jìn)制數(shù)表示一種不同的分配方案,如42301表示A從事4號(hào)工作,B從事2號(hào)工作……,據(jù)此可求出本方案的效益。枚舉所有可能的合法方案,求出效益值最大的方案。
小周同學(xué)幫忙設(shè)計(jì)了如下Python程序,運(yùn)行界面如圖b所示,請(qǐng)回答下列問(wèn)題:
(1)若有3個(gè)人完成3項(xiàng)工作的效益值為[[5,7,4],[4,6,3],[6,2,5]],則總效益最大值為
(2)為實(shí)現(xiàn)上述功能,請(qǐng)?jiān)跈M線處填入合適的代碼發(fā)布:2025/1/2 12:0:1組卷:0引用:1難度:0.3
相關(guān)試卷