#38939: 遞迴解


lingpingkun2007@gmail.com (嘿嘿嘿小學弟)

學校 : 國立武陵高級中學
編號 : 126042
來源 : [42.73.81.212]
最後登入時間 :
2024-04-29 23:19:43
f637. DF-expression -- APCS201810程式實作題3 | From: [42.72.13.57] | 發表日期 : 2024-01-05 18:21

這題非常簡單,首先建立一個函式 int f(int n) 定義:這一個區塊1的數量

把int i 和 string str 都設為全域變數

char c=str[i++];

當讀到的字元是'1' 時回傳n*n

當讀到的字元是'0' 時回傳0

當讀到的字元是'2' 時遞迴、回傳4個小塊所擁有的1的數量,因為四個小塊的邊長都是自己的一半,所以回傳時會像這樣f(n/2)+f(n/2)+f(n/2)+f(n/2),要注意不能因為長得像就寫成這樣4*f(n/2),每個f(n/2)都是獨立的。

 
ZeroJudge Forum