2 3
1 1 1 1 1 1 1 2 1
分析:杨辉三角有如下规律( i 行 j 列 )
1、从 n * n 矩阵的角度看( i 行 j 列 ,行列数都从 1 开始)
f ( i , 1 ) = 1 ( i > 0 )
f ( i , j ) = f ( i - 1 , j ) + f ( i - 1 , j - 1 ) ( j > 1 && j <= i )
2、根据 f ( i , j ) = f ( i - 1 , j ) + f ( i - 1 , j - 1 ) 这条规律,解题时可以考虑使用一维数组,第 i 行,数组下标从 i 递减到 1 ,数组元素循环执行 T ( i ) += T ( i - 1 ),这样就可以得到第 i 行的结果
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] triangle = new int[30];
while (scanner.hasNext()) {
int n = scanner.nextInt();
Arrays.fill(triangle, 0);
triangle[0] = 1;
for (int i = 0; i < n; i++) {
System.out.print(1);
for (int j = i; j != 0; j--) {
triangle[j] += triangle[j - 1];
}
for (int j = 1; j <= i; j++) {
System.out.print(" " + triangle[j]);
}
System.out.println();
}
System.out.println();
}
}
}[hdu 2032] 杨辉三角,布布扣,bubuko.com
原文:http://blog.csdn.net/u011506951/article/details/24133389