dede学校网站免费源码,网站建设哪家g好,网站规划内容包括,网站怎么做排行榜华为OD统一考试A卷B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应20022部分考题以及新出的题目#xff0c;A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载#xff0c;请点击此链接进入#xff1a…华为OD统一考试A卷B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应20022部分考题以及新出的题目A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载请点击此链接进入
题目描述 跳格子2 小明和朋友玩跳格子游戏 有 n个连续格子组成的圆圈每个格子有不同的分数小朋友可以选择从任意格子起跳但是不能跳连续的格子不能回头跳也不能超过一圈 ; 给定一个代表每个格子得分的非负整数数组计算能够得到的最高分数。 输入描述 给定一个数例第一个格子和最后一个格子收尾相连如2 3 2 输出描述 输出能够得到的最高分如3 补充说明 1 nums.length 100 0 nums[i] 1000 示例1 输入 2 3 2 输出 3 说明 只能跳3这个格子因为第一个格子和第三个格子收尾相连 示例2 输入 1 2 3 1 输出 4 说明 134 java解法
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int[] a new int[100];int n 0;while(sc.hasNextInt()) {a[n] sc.nextInt();}int[] dp new int[n];int ans 0;for(int i 0; i n- 1; i) {if(i 2) {dp[i] Math.max(dp[i- 1], dp[i - 2] a[i]);} else {dp[i] a[i];if(i 0) dp[i] Math.max(dp[i], dp[i-1]);}if(dp[i] ans) {ans dp[i];}}int[] f new int[n];for(int i 1; i n; i) {if(i 2) {f[i] Math.max(f[i- 1], f[i - 2] a[i]);} else {f[i] a[i];if(i 0) f[i] Math.max(f[i], f[i-1]);}if(f[i] ans) {ans f[i];}}System.out.println(ans);}
}