首页 > 编程语言 >算法刷题-杨辉三角-JAVA

算法刷题-杨辉三角-JAVA

时间:2023-02-23 23:36:18浏览次数:33  
标签:JAVA System println 算法 杨辉三角 out 输入 刷题

0x00 引言

为获取一个良好的算法思维,以及不再成为一个脚本小子,争取每天一道算法题,培养自己的逻辑思维,温顾各类型语言语法知识。

题解只写自己理解的解法,其他解法不再增加。题目与解析均在代码里面。

0x01 难度等级

简单

0x02 代码

package 简单;

import java.util.Scanner;

/*

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

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

数据范围: 1 \le n \le 10^9 \1≤n≤10
输入描述:
输入一个int整数

示例1
输入:
4

输出:
3

* */
public class 杨辉三角 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //输入n
        int n = sc.nextInt();
        if (n == 1 || n == 2) {
            System.out.println(-1);
        } else if (n % 4 == 1 || n % 4 == 3) {
            System.out.println(2);
        } else if (n % 4 == 2) {
            System.out.println(4);
        } else if (n % 4 == 0) {
            System.out.println(3);
        }

    }
}

0x03 算法思想

 

看着挺难的,实际上不难:

找规律:

n1234567891011……
index -1 -1 2 3 2 4 2 3 2 4 2 ……

 

 

 一个一个的找规律就会发现,只要对4取余,能得到0,1,2,3的规律。这样只要写个if判断即可。

0x04 运行结果

标签:JAVA,System,println,算法,杨辉三角,out,输入,刷题
From: https://www.cnblogs.com/cute-puli/p/17149858.html

相关文章

  • Java 操作mongodb的增删改查操作
    MongoDb非关系型数据库,又称为NoSql(不仅仅是sql),主要是非关系型,分布式,不提供ACID的数据库设计模式。MongoDB是一种面向文档的数据库管理系统,支持的数据结构非常松散,是类似j......
  • 算法刷题-数字颠倒-JAVA
    0x00引言为获取一个良好的算法思维,以及不再成为一个脚本小子,争取每天一道算法题,培养自己的逻辑思维,温顾各类型语言语法知识。题解只写自己理解的解法,其他解法不再增加。......
  • 深入学习java源码之File类
    File类的常用方法①、创建方法1.booleancreateNewFile()不存在返回true存在返回false2.booleanmkdir()创建目录,如果上一级目录不存在,则会创建失......
  • java的数组与Arrays类源码详解
    java的数组与Arrays类源码详解java.util.Arrays类是JDK提供的一个工具类,用来处理数组的各种方法,而且每个方法基本上都是静态方法,能直接通过类名Arrays调用。类的定义......
  • java的StringBuilder与StringBuffer类源码详解
     java的StringBuilder与StringBuffer类源码详解类的定义abstractclassAbstractStringBuilderimplementsAppendable,CharSequence{char[]value;intcount;......
  • java枚举Enum与Enumeration源码详解
    java枚举Enum与Enumeration源码详解类的定义publicabstractclassEnum<EextendsEnum<E>>implementsComparable<E>,Serializable{}属性定义privatefinalStr......
  • java的Integer类源码详解
    java的Integer类源码详解类的定义publicfinalclassIntegerextendsNumberimplementsComparable<Integer>{@NativepublicstaticfinalintMIN_VALUE=0x800......
  • JavaScript 如何验证 URL
    前言当开发者需要为不同目的以不同形式处理URL时,比如说浏览器历史导航,锚点目标,查询参数等等,我们经常会借助于JavaScript。然而,它的频繁使用促使攻击者利用其漏洞。这种被......
  • Java核心技术读书笔记-输入与输出
    IO流InputStream与OutputStream设计的目的是处理字节流的数据;而Reader和Writer是专门用于处理Unicode字符的类层次结构。read和write方法在执行时都将阻塞,直至字节确实......
  • java的一个小demo
    publicstaticvoidmain(String[]args){intnum=0;num=num++;System.out.println(num);//0num=++num;Sys......