获赞
59
粉丝
13
关注
4
看过 TA
170
门头沟学院
2021
后端
IP属地:广东
暂未填写个人简介
私信
关注
第一题 记不清了,不过很简单。 第二题 输入一串以英文逗号分隔的整数,整数中每个数字代表该轮能获得多少分, 如果不参加该轮则得分要退回到三局前的分数(前面没有三局则得分置0), 计算参赛者能获得到的最高分是多少 例如: 输入:1,-5,-6,4,3,6,-2 输出: 11 解释: 1 参赛,总分1分 -5(如果参赛总分为1+(-4),不参赛总分为0)故不参赛,总分0分 -6 不参赛 总分0分 4 参赛 总分4分3 参赛 总分 7分6 参赛 总分13分-2 参赛 总分11分 下面是我的代码,通过95%的用例 import java.util.*; publi...
Benny001:public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); String[] split = s.split(","); int[] arr = new int[split.length]; for (int i = 0; i < split.length; i++) { arr[i] = Integer.parseInt(split[i]); } int sum = 0; int len = arr.length; int[] dp = new int[len]; dp[0] = arr[0]; for (int i = 1; i < len; i++) { if (i == 1) { dp[1] = Math.max(dp[0] + arr[i], 0); } else if (i == 2) { dp[2] = Math.max(dp[1] + arr[i], 0); } else { dp[i] = Math.max(dp[i - 3], dp[i - 1] + arr[i]); } } sum = Math.max(sum, dp[len -1]); System.out.println(sum); } 只有一场比赛时,楼主的sum计算错误
投递华为等公司10个岗位 >
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务