目前共有2篇帖子。 字體大小:較小 - 100% (默認)▼  內容轉換:台灣正體▼
 
點擊 回復
347 1
【試題】第39級台階
一派掌門 二十級
1樓 發表于:2016-3-18 21:21
#include <stdio.h>

int count = 0;
char str[100];

void search(int nStaircases, int nSteps = 0)
{
    if (nStaircases < 0) // 不能多走幾階梯
        return;
    if (nStaircases == 0) // 走完了所有階梯時
    {
        if (nSteps % 2 == 0) // 走了剛好偶數步
        {
            str[nSteps] = '\0';
            //puts(str);
            count++; // 方案可行
        }
        return;
    }
    
    str[nSteps] = '1';
    search(nStaircases - 1, nSteps + 1); // 走一步
    str[nSteps] = '2';
    search(nStaircases - 2, nSteps + 1); // 走兩步
}

int main(void)
{
    search(39);
    printf("%d\n", count);
    return 0;
}
一派掌門 二十級
2樓 發表于:2016-3-18 21:23
這道題比較簡單,關鍵是要讀懂題。
其實就是要求計算偶數個1和2相加等於39的算式有多少個。
 

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
(快捷鍵:Ctrl+Enter)
 

本帖信息

點擊數:347 回複數:1
評論數: ?
作者:巨大八爪鱼
最後回復:巨大八爪鱼
最後回復時間:2016-3-18 21:23
 
©2010-2025 Purasbar Ver2.0
除非另有聲明,本站採用共享創意姓名標示-相同方式分享 3.0 Unported許可協議進行許可。