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,從第三行開始,每一行的第二個數是前一行的第乙個數與第二...