7 条题解
-
2
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a[105][105]; for (int i = 1; i <= n; i++) { for (int j = 1; j <= i; j++) { if (j == 1 || i == j) a[i][j] = 1; else a[i][j] = a[i - 1][j] + a[i - 1][j - 1]; cout << a[i][j] << " "; } cout << endl; } }
-
1
#include<cstdio> int a[21][21]; int main() { int n; scanf("%d",&n); for(int i=1;i<=n;i++) a[i][1]=a[i][i]=1;//赋初值 for(int i=1;i<=n;i++) for(int j=2;j<i;j++)//因为a[i][1]、a[i][i]已经赋值过了,所以循环是2~n-1 a[i][j]=a[i-1][j]+a[i-1][j-1]; for(int i=1;i<=n;i++) { for(int j=1;j<=i;j++) printf("%d ",a[i][j]); printf("\n"); } }
-
0
#include<iostream> using namespace std; int a[35][35]; int main() { int n; cin >> n; for(int i=1;i<=n;i++) { for(int j=1;j<=i;j++) { if(j==1 || j==i) { a[i][j]=1; } else { a[i][j]=a[i-1][j-1]+a[i-1][j]; } } } for(int i=1;i<=n;i++) { for(int j=1;j<=i;j++) { cout << a[i][j] << " "; } cout << endl; } return 0; }
-
0
部分代码:
for(ll i=0;i<n;i++){ f[i][0]=1; for(ll j=1;j<=i;j++) f[i][j]=f[i-1][j]+f[i-1][j-1]; for(ll j=0;j<=i;j++) printf("%lld%c",f[i][j],j==i?'\n':' '); }
upd. 将原代码替换为了老师课上讲的代码,虽然原代码好像没什么问题,但是套在这一题上好像就有问题了。
还是背这个板子把 -
0
- 1
信息
- ID
- 566
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 4
- 标签
- 递交数
- 353
- 已通过
- 152
- 上传者