小林發(fā)現(xiàn)他的魚(yú)缸里的觀賞魚(yú)越來(lái)越少了。仔細(xì)觀察才發(fā)現(xiàn),即使按時(shí)喂魚(yú),一些大魚(yú)也會(huì)爭(zhēng)著吃小魚(yú)—一但是不會(huì)吃比它小太多的魚(yú)。準(zhǔn)確地講,若一條大小是ai的魚(yú),當(dāng)存在另外一條魚(yú)aj個(gè)頭嚴(yán)格比它小,但個(gè)頭差不超過(guò)整數(shù)k時(shí)(即ai-aj)≤k),ai會(huì)吃掉aj—一吃掉后,ai不會(huì)變大,aj會(huì)消失。
如:當(dāng)魚(yú)的大小是a=[101,53,42,102,101,55,54]且k=1時(shí),一種可能的掠食過(guò)程是(下劃線表示被吃):[101,53,42,102,101,55,54]→[101,53,42,102,55,54]→[101,42,102,55,54]→[42,102,55,54]→[42,102,55],最后只剩下3條魚(yú)。小林想用Python程序模擬研究一下,對(duì)于給定的魚(yú)大小和k的值,最壞情況下會(huì)剩幾條魚(yú)。
(1)若a=[20,15,10,15,31,20,25],k=5,則最壞情況下會(huì)剩 22條魚(yú)。
(2)研究前,小林先對(duì)a 中所有數(shù)據(jù)進(jìn)行升序排序,請(qǐng)完成下面的程序。
(3)以下程序從最小的魚(yú)兒開(kāi)始模擬讓較大的魚(yú)吃較小的魚(yú),無(wú)法吃掉的魚(yú)保存在st變量中,結(jié)束后輸出st中剩余的元素個(gè)數(shù)就是最壞情況下所剩魚(yú)的數(shù)量。請(qǐng)完善算法。
(4)對(duì)于剩下的魚(yú)中,是否還存在某種大小的魚(yú)兒。輸入魚(yú)的大小,查詢(xún)?cè)摮叽绲聂~(yú)兒是否還存在。請(qǐng)完善以下算法。
【考點(diǎn)】程序設(shè)計(jì)實(shí)例.
【答案】2
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書(shū)面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/6/27 10:35:59組卷:1引用:1難度:0.3
相似題
-
1.公因數(shù)只有1的兩個(gè)非零自然數(shù),叫做互質(zhì)自然數(shù)。王老師編寫(xiě)了一個(gè)Python程序,程序的功能是隨機(jī)產(chǎn)生5個(gè)1到20之間的整數(shù),找出其中和最大的互質(zhì)數(shù)對(duì)。程序運(yùn)行界面如圖所示:
實(shí)現(xiàn)該功能的程序代碼如下:
請(qǐng)回答下列問(wèn)題:
(1)尋找互質(zhì)數(shù)對(duì)的算法屬于
(2)如產(chǎn)生的 5 個(gè)隨機(jī)數(shù)是[20,16,12,6,14],則程序輸出內(nèi)容是
(3)要實(shí)現(xiàn)程序的功能,請(qǐng)完善橫線處的代碼。發(fā)布:2024/12/20 18:0:1組卷:3引用:1難度:0.4 -
2.小紅用Python編寫(xiě)程序畫(huà)出了如圖形,在第三行下劃線處應(yīng)該填寫(xiě)( ?。?br />
發(fā)布:2024/12/18 11:0:1組卷:2引用:1難度:0.6 -
3.【加試題】小丫覺(jué)得回文字符串太優(yōu)美了(回文字符串是指順讀和倒讀都一樣的字符串,如“123321”),為此編寫(xiě)了VB 程序。程序運(yùn)行時(shí),單擊按鈕Command1 后,根據(jù)文本框Text1 中輸入的內(nèi)容判斷并輸出是不是回文串。實(shí)現(xiàn)上述功能的VB 代碼如下。
Private Sub Command1_Click( ?。?br />Dim s As String,f As Boolean,L As Integer
s=Text1.Text
j=Len(s)
i=1
Do while?、?/bdo>
i=i+1
j=j-1
Loop
If?、?/bdo>Then Print“是回文串“Else Print“不是回文串“
End Sub
在畫(huà)線處填入合適代碼,使程序能正常運(yùn)行。
①
②發(fā)布:2024/12/19 14:30:2組卷:0引用:1難度:0.4
把好題分享給你的好友吧~~