×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
分類題庫
解題動態
排行榜
討論區
競賽區
登入
註冊
發表新討論
解題報告
#54291: 一個普通的python解題方法
woominytr
(梧銘)
學校:
新北市立板橋高級中學
編號:
328804
×
傳送站內訊息
傳給:
主題:
內容:
來源:
[101.10.12.155]
註冊時間:
2025-11-17 11:46:22
最後登入時間:
2026-01-03 12:01:58
c291.
APCS 2017-0304-2小群體
--
2017年
3月
APCS
| From: [101.10.12.155] | 發表日期: 2025-12-29 20:49
a=int(input())
b=list(map(int,str(input()).split()))
d=set()
反正只需記錄誰出現過,用set就行。
f=0 --> 群體數
for i in range(a):
if i in d:
continue --> 每個都跑一遍,被記錄過就跳過。
f+=1 --> 既然沒跑過,那先記錄群體數+1
e=b[i]
while True:
if e in d:
break --> 如果在裡面就跳出來
else:
d.add(e)
e=b[e] -->否則紀錄,接著尋找下一個