蓝桥杯试题 历届真题 杨辉三角形【第十二届】【java省赛】

蓝桥杯试题 历届真题 杨辉三角形【第十二届】【java省赛】_第1张图片

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        //创建数组,大小自己设定,可以写一个测试函数,测试当前大小的数组的最大值是否大于1000000000
        long[][] arr = new long[33][10000];    

        //构造杨辉三角
        for(int i = 0; i < arr.length; i++){
            for(int j = 0; j <= i; j++){
                if(j == 0 || i == j){
                    arr[i][j] = 1;
                }else{
                    arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];
                }
                //System.out.println(arr[i][j]);
            }
        }

        //从键盘输入整数
        Scanner scanner = new Scanner(System.in);
        int N = scanner.nextInt();

        //计算输入的整数所在位置
        int count = 1;
        for(int i = 0; i < arr.length; i++){
            for(int j = 0;  j <= i; j++){
                if(N == arr[i][j]){
                    System.out.println(count);
                    return;
                }else{
                    count++;
                }
            }
        }
    }
}

你可能感兴趣的:(蓝桥杯,蓝桥杯,职场和发展)