华为OD机试-猴子爬山-dp(JAVA 2025A卷)

java 复制代码
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNextLine()){
            int n = sc.nextInt();
            // dp
            System.out.println(solve1(n));
            // double pointer
            System.out.println(solve2(n));
        }
    }

    private static int solve1(int n) {
        int[] dp = new int[n+1];
        // 初始化
        for(int i=0;i<3;i++){
            dp[i] = 1;
        }
        for(int i =3;i<=n;i++){
            dp[i] =dp[i-3]+dp[i-1];
        }
        return dp[n];
    }

    private static int solve2(int n) {
        int f1=1,f2=1,f3=2,f4 = 0;
        for(int i=4;i<=n;i++){
            f4=f3+f1;
            f1=f2;
            f2=f3;
            f3=f4;
        }
        return f4;
    }

}
相关推荐
IronMurphy6 小时前
【算法四十三】279. 完全平方数
算法
lee_curry6 小时前
第四章 jvm中的垃圾回收器
java·jvm·垃圾收集器
墨染天姬6 小时前
【AI】Hermes的GEPA算法
人工智能·算法
papership6 小时前
【入门级-数据结构-3、特殊树:完全二叉树的数组表示法】
数据结构·算法·链表
smj2302_796826526 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
九转成圣7 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
Beginner x_u7 小时前
链表专题:JS 实现原理与高频算法题总结
javascript·算法·链表
直奔標竿7 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
金銀銅鐵8 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端