蓝桥杯 基础练习 杨辉三角形 java

记录 2018 7

  • 摘要:题目描述杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。下面给出了杨辉三角形的前4行:1111211331给出n,输出它的前n行。输入格式输入包含一个数n。输出格式输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。样例输入4样例输出1111211331publicclassMain{publicstaticvoidmain(
  • 题目描述

    杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。

    它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。

    下面给出了杨辉三角形的前4行:

    1

    1 1

    1 2 1

    1 3 3 1

    给出n,输出它的前n行。

    输入格式

    输入包含一个数n。

    输出格式

    输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。

    样例输入

    4

    样例输出

    1

    1 1

    1 2 1

    1 3 3 1

思路:

 这题比较简单,简单说下,上一行的2个数加起来等于这一行的数,不过开始不要忘记给边缘赋初值为1

import java.util.Scanner;
public class Main {

	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		int[][] a = new int[n][n];
		for(int i = 0;i<n;i++)
		{
			for(int j = 0;j<=i;j++)
			{
				if(j==0 || i == j)
					a[i][j]=1;
			}
		}
		for(int i = 1;i<n;i++)
		{
			for(int j = 1;j<i;j++)
			{
				a[i][j] = a[i-1][j] + a[i-1][j-1];
			}
		}		
		
		for(int i = 0;i<n;i++)
		{
			for(int j = 0;j<=i;j++)
			{
				System.out.print(a[i][j]+" ");
			}
			System.out.println();
		}
		
	}

}

 

    原文作者:杨辉三角问题
    原文地址: https://blog.csdn.net/weixin_41793113/article/details/81396663
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞