程式設計題 iNOC產品部 楊輝三角的變形

2021-07-28 20:24:32 字數 1037 閱讀 6242

talk is cheap, show me the code.

1 

1 1 1

1 2 3 2 1

1 3 6 7 6 3 1

1 4 10 16 19 16 10 4 1

以上三角形的數陣,第一行只有乙個數1,以下每行的每個數,是恰好是它上面的數,左上角數到右上角的數,3個數之和(如果不存在某個數,認為該數就是0)。求第n行第乙個偶數出現的位置。如果沒有偶數,則輸出-1。例如輸入3,則輸出2,輸入4則輸出3。 輸入n(n <= 1000000000)

輸入描述:

輸入乙個int整數
輸出描述:

輸出返回的int值
輸入例子:

4
輸出例子:

3
兩種思路,一種是找規律,前兩行沒有偶數,直接返回-1,後面所有奇數行第2位都是偶數,直接返回2,所有偶數行中能被4整除的直接返回3,所有偶數行中不能被4整除的直接返回4。這個解法需要對楊輝三角特點歸納一下,但如果找到規律解題就很快。

#include using namespace std;

int main()

}return 0;

}

另一種思路是直接遍歷第n行中每個數,當找到第乙個偶數時返回序號,這個需要對楊輝三角的計算過程比較熟悉,遞迴的結束條件一定要控制好。

#include using namespace std;

int f(int a, int b)

int main()

}if(!flag)

cout << "-1" << endl;

}return 0;

}

iNOC產品部 楊輝三角的變形

1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 1 4 10 16 19 16 10 4 1 以上三角形的數陣,第一行只有乙個數1,以下每行的每個數,是恰好是它上面的數,左上角數到右上角的數,3個數之和 如果不存在某個數,認為該數就是0 求第n行第乙個偶數出現的位置。如果沒有偶數,則輸出...

iNOC產品部 楊輝三角形的變形

1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 1 4 10 16 19 16 10 4 1以上三角形的數陣,第一行只有乙個數1,以下每行的每個數,是恰好是它上面的數,左上角數到右上角的數,3個數之和 如果不存在某個數,認為該數就是0 求第n行第乙個偶數出現的位置。如果沒有偶數,則輸...

華為初級 iNOC產品部 楊輝三角形的變形

源程式 總結 這道題目的關鍵在於求出這個變形的楊輝三角形。其實題目的描述有很大問題,但是已經給出了變形了的楊輝三角形,所以,可以根據例出來的三角形來寫出程式。首先 寫出求楊輝三角形的程式 每一行的第乙個數和最後乙個數都是1 第二行的第二個數是1,從第三行開始,每一行的第二個數是前一行的第乙個數與第二...