小王到某城市,時間只有一天了,但小王很想到該城市的著名大景區游玩,該城市的著名大景區內共有N(超過10)個景點,標號為1至N,假設每個景點都有一個進出口。現在只知道每個景點有一條路連接下一個景點。小王想知道,根據這些道路信息,從其中一個景點出發,最后再回到出發景點離開,最多能游玩多少個景點。
例如,共有N=5個景點,每個景點連接的下一個景點分別是2,4,2,3,1。
景點號 | 1 | 2 | 3 | 4 | 5 |
下一景點號 | 2 | 4 | 2 | 3 | 1 |
PrivateSubCommand1_Click
( )
( )
Dima(1To100)AsInteger,d(1To100)AsInteger'數組a存放下一景點號
DimjdAsString,mAsString,cAsInteger,iAsInteger
DimsAsInteger,pAsInteger,kAsInteger,ansAsInteger
jd=Text1.Text+“,“
s=0:c=0
Fori=1ToLen(jd)
m=Mid(jd,i,1)
Ifm<>“,“Then
①
s=s*10+val(m)
s=s*10+val(m)
Else
c=c+1:a(c)=s:s=0
EndIf
Nexti
Fork=1To100d(k)=0
Nextkans=0:k=0
Fori=1Toc'枚舉起點
Ifd(i)=0Thenp=i
DoWhilep<=c
Ifd(p)=0Then
k=k+1:d(p)=k
Else
②
y=k-c-1
y=k-c-1
Ify>ansThenans=yk=0
ExitDo
EndIf

Loop
EndIf
NextiText2.Text=Str(ans)
EndSub
(1)若有7個景點,且每個景點的連接情況為:6,3,5,2,7,5,4,那么小王最多可以游玩的景點數是
5
5
。(2)程序代碼中,程序①②填空
①
s=s*10+val(m)
s=s*10+val(m)
②
y=k-c-1
y=k-c-1
(3)程序代碼中,加框處代碼有錯,請改正。
改正
p=a(p)
p=a(p)
【考點】枚舉算法及程序實現.
【答案】( );s=s*10+val(m);y=k-c-1;5;s=s*10+val(m);y=k-c-1;p=a(p)
【解答】
【點評】
聲明:本試題解析著作權屬菁優網所有,未經書面同意,不得復制發布。
發布:2024/4/20 14:35:0組卷:4引用:1難度:0.3
相似題
-
1.以下問題,適合用枚舉法解決的是( )
A.已知圓的半徑和圓的面積公式求圓的面積 B.利用求和公式計算1+3+5+7+…+100的和 C.已知三角形三邊長度,通過海倫公式求出三角形的面積 D.中國科學家們通過對4萬多種抗瘧疾的化合物和中草藥的篩選,最終屠呦呦發現青蒿素具有良好抗瘧效果(由此屠呦呦獲得2015年諾貝爾獎) 發布:2024/11/8 11:30:1組卷:2引用:1難度:0.8 -
2.如果一個4位數恰好等于它的各位數字的4次方和,則這個數被稱為“玫瑰花”數。例如1634就是一個玫瑰花數:1634=14+64+34+44。如果要求出所有的玫瑰花數,下列算法合適的是( )
A.查找法 B.解析法 C.窮舉法 D.排序法 發布:2024/11/16 22:30:5組卷:7引用:2難度:0.5 -
3.若一個三位數abc,滿足abc=a3+b3+c3,則稱abc為水仙花數。如三位數153滿足13+53+33=1+125+27=153,則153是水仙花數。請把所有滿足條件的水仙花數輸出。
(1)分析問題。由題意可知,三位數的范圍是100~999,我們可以讓計算機一一檢查每一個三位數,輸出其中的水仙花數。設百位數字、十位數字、個位數字分別是a,b,c(0<a≤9,0≤b≤9,0≤c≤9),這個三位數就可以表示為100×a+10×b+c,如果它正好等于各位數字的立方和,那么它就是水仙花數。
(2)設計算法。
①令a從1~9窮舉;
②令b從0~9窮舉;
③令c從0~9窮舉;
④如果100×a+10×b+c和a3+b3+c3相等,那么就把它輸出。
⑤轉步驟③,重復執行③④⑤,直到c窮舉完畢;
⑥轉步驟②,重復執行②③④⑤⑥,直到b窮舉完畢;
⑦轉步驟①,重復執行①②③④⑤⑥⑦,直到a窮舉完畢;
⑧跳出循環,結束。
(3)編寫程序。
(4)調試程序。發布:2024/8/7 8:0:9組卷:1引用:0難度:0.4