1 条题解
-
0
C :
#include<stdio.h> void fun(int a[][50],int n) { int i,j; for(i=0;i<n;i++) for(j=0;j<=i;j++) { if(i==j) a[i][j]=1; else if(j==0) a[i][j]=1; else a[i][j]=a[i-1][j-1]+a[i-1][j]; } } int main() { int i,j,k,n,m; int a[50][50]; scanf("%d",&m); for(i=0;i<=m;i++){ k=1; while(scanf("%d",&n)==1){ fun(a,n); for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) printf(" "); for(j=0;j<=i;j++) { if(j==i) printf("%d",a[i][j]); else printf("%d ",a[i][j]); } printf("\n"); } } } return 0; }
C++ :
#include <iostream> #include <cstdio> using namespace std; int fun(int n,int k) { if(k==0 || n==k) return 1; else return fun(n-1,k-1)+fun(n-1,k); } int main() { //freopen("test.in", "r", stdin); //freopen("test.out", "w", stdout); int i,j,n,t; cin >> t; while (t--) { cin>>n; for(i=0; i<n; i++) { for(int k=0; k<n-i-1; k++) cout<<" "; for(j=0; j<i; j++) cout<<fun(i,j)<<" "; cout<<fun(i,i)<<endl; } } return 0; }
Pascal :
var a:array[1..10,1..10] of longint; n,m,i,j,k:longint; begin read(n); for k:=1 to n do begin readln(m); a[1,1]:=1; for i:=2 to m do begin a[i,1]:=1; a[i,i]:=1; for j:=2 to i-1 do a[i,j]:=a[i-1,j-1]+a[i-1,j]; end; for i:=1 to m-1 do begin write(' ':m-i); for j:=1 to i-1 do write(a[i,j],' '); writeln(a[i,i]); end; for i:=1 to m-1 do write(a[m,i],' '); writeln(a[m,m]); end; end.
- 1
信息
- ID
- 2093
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者