杨辉三角变形

杨辉三角的变形

http://www.nowcoder.com/questionTerminal/8ef655edf42d4e08b44be4d777edbf43

本题是找规律的题,只要往下再写几行就可以看出奇偶的规律,而且每行只需要写前几个就可以了,因为题目问的是第一个偶数的index。
于是我们会发现,只有n为1,2时,没有出现偶数,剩下的按照2 3 2 4的规律每四行循环一次。

n 1 2 3 4 5 6 7 8 9 10 11 ……
index -1 -1 2 3 2 4 2 3 2 4 2 ……

规律为:

n (对4求余的结果)%4 print
4、8、12…… 0 3
5、9、13…… 1 2
6、10、14 …… 2 4
7、11、15…… 3 2

代码:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            int num = in.nextInt();
            if(num == 1 || num == 2){
                System.out.println(-1);
                continue;
            }
            else if(num % 4 == 1 || num % 4 == 3){
                System.out.println(2);
                continue;
            }
            else if(num % 4 == 0){
                System.out.println(3);
                continue;
            }
            else if(num % 4 == 2){
                System.out.println(4);
                continue;
            }
        }
    }
}
全部评论
不用算具体的数值,就奇偶标识一下就可以了,奇偶的和是奇,奇奇的和是偶
8
送花
回复
分享
发布于 2022-01-27 15:31
我是先计算出n行的所有数,再去找第一个偶数位置,结果是可行的。但是,当找n=100000时,超时了.....哎
6
送花
回复
分享
发布于 2022-03-27 22:23
滴滴
校招火热招聘中
官网直投
本来我也是计算前n行, 但是看了一遍用例,10^9....果断翻题解.
3
送花
回复
分享
发布于 2022-10-01 19:55 辽宁
啊啊啊啊,我是打印出了这个三角形,然后直接遍历,通过22组案例后OOM了,凸(艹皿艹 )。原来找规律这么简单啊
2
送花
回复
分享
发布于 2023-01-12 18:27 陕西
试了下,这道题,除了找规律别无他法。不管是一维数组,二维数组,list,还是使用pre,cur两个,都过不了。计算量摆在那里。有哪位大神,能不找规律,还能处理大数据,看发出来看。
1
送花
回复
分享
发布于 2023-04-15 19:00 湖北
大佬是手动算出了前11行,看出了结果?我算到第6行的前4个,就算不下去了
点赞
送花
回复
分享
发布于 2021-06-14 20:20
妙啊
点赞
送花
回复
分享
发布于 2022-04-09 09:59
第10行写不下去了,就写了9行,没找到规律,只知道奇数行是2,哈哈哈哈
点赞
送花
回复
分享
发布于 2023-03-10 11:23 广东
这个地方的continue的作用是啥啊,没看懂
点赞
送花
回复
分享
发布于 2023-06-02 09:43 山东
-1-1 2324 2324 2324正常人根本看不出这规律,即使找到这规律后,是个人也想不出%4的规律
点赞
送花
回复
分享
发布于 2023-06-21 11:33 美国
java.lang.OutOfMemoryError: Java heap space 自己用IDEA跑就能过,在这里提交就报这个错,jvm栈溢出..离谱
点赞
送花
回复
分享
发布于 2023-12-30 17:48 北京

相关推荐

152 10 评论
分享
牛客网
牛客企业服务