zl程序教程

您现在的位置是:首页 >  Java

当前栏目

杨辉三角变形(算法)

2023-02-18 16:29:03 时间

杨辉三角如上,,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数、左上角数和右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。

求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3,输入2则输出-1。

可以找到如下规律:

1 -1

2 -1

3 2

4 3

5 2

6 4

 public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
           Integer integer = sc.nextInt();
            if(integer == 1 || integer == 2){
                System.out.println("-1");
                return;
            }
            if(integer % 4 == 3 || integer % 4 == 1){
                System.out.println("2");
                return;
            }
            if(integer % 4 == 0){
                System.out.println("3");
                return;
            }
            if(integer % 4 == 2){
                System.out.println("4");
                return;
            }
        }
    }