题解 | #杨辉三角的变形#

杨辉三角的变形

https://www.nowcoder.com/practice/8ef655edf42d4e08b44be4d777edbf43

用实在的数组去一行行计算,最后总是有些超大的输入导致运行超时,所以部分用例过不了。

后来发现,找数字规律就行了:。。。。(侮辱性极强😅😅)

import java.util.Scanner;
//如果n为奇数,一定是第二个数字为偶数,因为第二个数字恒为n-1;如果n为偶数,当n为(4,6,8,10.....)时分别是(3,4,3,4....)
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int a = in.nextInt();
            int out = 0;
            if (a > 2 && a % 2 == 1) {
                out = 2;
            } else if (a > 2 && a % 2 == 0) {
                if ((a / 2) % 2 == 0) {
                    out = 3;
                } else if ((a / 2) % 2 == 1) {
                    out = 4;
                }
            } else if (a <= 2) {
                out = -1;
            }
            System.out.println(out);
        }
    }
}

全部评论

相关推荐

像好涩一样好学:这公司我也拿过 基本明确周六加班 工资还凑活 另外下次镜头往上点儿
点赞 评论 收藏
分享
oppo 应用软开 22*15+0.5*12
拿到了ssp完美:真的坎坷,但是你至少拿到这么多offer了!
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务