九度 oj 题目1073:杨辉三角形

来源:互联网 发布:出国旅游的好处知乎 编辑:程序博客网 时间:2024/05/29 19:25

http://ac.jobdu.com/problem.php?pid=1073


#include <cstdio>#include <cstring>#define inone(i) scanf("%d",&i)#define rep(i,j,k) for(int i=j;i<=k;i++)const int maxn = 1e6;int n;int dp[2][maxn];int get(int i, int m){if (m < i) return 0;if (i==0||m == 1|| m==i) return 1;return get(i - 1, m - 1) + get(i, m - 1);}void yanghui(int m) {rep(i, 0, m-1){printf("%s%d", i==0?"":" ", get(i, m-1));}puts("");}void dpyanghui(int deep){int t = 0;memset(dp, 0, sizeof(dp));dp[0][0] = 1; rep(i, 2, deep){rep(j, 0, i - 1){if (j == 0) dp[(t + 1) % 2][j] = 1;else dp[(t+1)%2][j] = dp[t][j - 1] + dp[t][j];printf("%s%d",j==0?"":" ",dp[(t+1)%2][j]);}t = (t + 1) % 2;puts("");}}int main(){while (inone(n) != EOF) {//rep(i, 2, n) yanghui(i);dpyanghui(n);}    return 0;}


0 0
原创粉丝点击