1073_楊輝三角形
2019-11-14 11:34:48
供稿:網友
// 1073_楊輝三角形.cpp : 定義控制臺應用程序的入口點。//題目1073:楊輝三角形//時間限制:1 秒內存限制:32 兆特殊判題:否提交:4381解決:1894//題目描述://輸入n值,使用遞歸函數,求楊輝三角形中各個位置上的值。//輸入://一個大于等于2的整型數n//輸出://題目可能有多組不同的測試數據,對于每組輸入數據,//按題目的要求輸出相應輸入n的楊輝三角形。//樣例輸入://6//樣例輸出://1 1//1 2 1//1 3 3 1//1 4 6 4 1//1 5 10 10 5 1#include "stdafx.h"#include "iostream"#include "stdio.h"#include "string.h"using namespace std;int a[110][110];int visit[110][110];int n;int Yanghui(int i,int j){ if(j==0 || i == j){ return 1; } else for(int k = 1;k<i;k++){ if(!visit[i][k]){ if (!visit[i-1][k-1]){ a[i-1][k-1] = Yanghui(i-1,k-1); visit[i-1][k-1] = 1; } if(!visit[i-1][k]){ a[i-1][k] = Yanghui(i-1,k); visit[i-1][k-1] = 1; } a[i][k] = a[i-1][k-1]+a[i-1][k]; visit[i][k] = 1; } }}int main(){ while(scanf("%d",&n)!=EOF){ //memset(a,1,sizeof(a)); for (int i = 0;i<=n;i++) for (int j =0;j<=n;j++) a[i][j] = 1; memset(visit,0,sizeof(visit)); Yanghui(n-1,1); for(int i=1;i<n;i++){ int j; for(j = 0;j<i;j++) cout<<a[i][j]<<" "; cout<<a[i][j]<<endl; } } return 0;}/*1.memset()只能賦值0和-1;*/