当前位置: 首页 > news >正文

贵阳的网站建设wordpress登陆后评论增加注册按钮

贵阳的网站建设,wordpress登陆后评论增加注册按钮,物流网络是指什么,移动互联网开发技术就业前景Leetcode 2786. 访问数组中的位置使分数最大 给你一个下标从 0 开始的整数数组 nums 和一个正整数 x 。 你 一开始 在数组的位置 0 处&#xff0c;你可以按照下述规则访问数组中的其他位置&#xff1a; 如果你当前在位置 i &#xff0c;那么你可以移动到满足 i < j 的 任意 …

Leetcode 2786. 访问数组中的位置使分数最大

给你一个下标从 0 开始的整数数组 nums 和一个正整数 x 。
一开始 在数组的位置 0 处,你可以按照下述规则访问数组中的其他位置:

  • 如果你当前在位置 i ,那么你可以移动到满足 i < j 的 任意 位置 j 。
  • 对于你访问的位置 i ,你可以获得分数 nums[i] 。
  • 如果你从位置 i 移动到位置 j 且 nums[i] 和 nums[j] 的 奇偶性 不同,那么你将失去分数 x 。

请你返回你能得到的 最大 得分之和。
注意 ,你一开始的分数为 nums[0] 。

image.png

定义一个数组保存到当前位置且包含当前位置的最大分数,每判断一个元素是,遍历之前的元素进行累加得到最大的分数。
完整代码

class Solution {public long maxScore(int[] nums, int x) {int n = nums.length;long res = nums[0];long[] val = new long[n];val[0] = nums[0];for (int i = 1; i < n; i++) {long max = nums[i];for (int j = 0; j < i; j++) {long t = val[j] + (long) nums[i];if ((nums[j] % 2) != (nums[i] % 2)) t -= x;max = Math.max(max, t);}val[i] = max;res = Math.max(res, val[i]);}return res;}
}

但注意,一开始处于 0 处,所以需要从 0 开始,上述代码是可以不从 0 开始,从自己开始,因此值会偏大。
将当前元素的初始值初始化为 Long.MIN_VALUE,那么从前面开始就比从自己开始小,因此就能避免从自己开始。
完整代码

class Solution {public long maxScore(int[] nums, int x) {int n = nums.length;long res = nums[0];long[] val = new long[n];val[0] = nums[0];for (int i = 1; i < n; i++) {long max = Long.MIN_VALUE;for (int j = 0; j < i; j++) {long t = val[j] + (long) nums[i];if ((nums[j] % 2) != (nums[i] % 2)) t -= x;max = Math.max(max, t);}val[i] = max;res = Math.max(res, val[i]);}return res;}
}

以上的时间复杂度为 O ( n 2 ) O(n^2) O(n2),因为每次都要遍历前面的结果。
保存前面的最优结果,它的最优结果就两种情况:

  • 最优结果的最后一个元素是奇数
  • 最优结果的最后一个元素是偶数

完整代码

class Solution {public long maxScore(int[] nums, int x) {int n = nums.length;long res = nums[0];long[] dp = new long[]{Integer.MIN_VALUE, Integer.MIN_VALUE};dp[nums[0] % 2] = nums[0];for (int i = 1; i < n; i++) {int part = nums[i] % 2;long cur = Math.max(dp[part] + nums[i], dp[1 - part] + nums[i] - x);res = Math.max(res, cur);dp[part] = Math.max(dp[part], cur);}return res;}
}

要注意最小值的设置,因为里面存在 -x,可能会超出最小值的范围,因此可以设置为 -xInteger.MIN_VALUE

http://www.yayakq.cn/news/266596/

相关文章:

  • 做网站建设的好处设计师的免费设计软件
  • 手机网站源码怎么打开有服务器有域名怎么做网站
  • 天津网站搜索引擎优化wordpress使用端口
  • 苏州网站建设如何选择东莞品牌网站设计公司计公司
  • 南部县网站建设公司百度小说搜索排行榜
  • 商丘网站建设推广公司怎样创建一个网站平台
  • 松岗做网站价格临安做网站
  • 郑州数码网站建设服务公司dedecms 生成网站地图
  • 数字网站建设wordpress5连接中文
  • 毕设做网站答辩稿wordpress新建php页面模板
  • 自己买个服务器做代挂网站成都 在线 网站建设
  • 免费做app的网站有吗百度搜索入口
  • 网站正在建设中视频海南省建设执业资格管理中心网站
  • 建大仁科公司网站个人网站炫酷主页html
  • wordpress本地站点地址如何配置找产品代理去哪个网站
  • 专业的建设企业网站中国工商银行官网网站
  • 大学生个人网站怎么做网站开发是属于哪个税收分类
  • 旅行社 网站系统如何制作自己的网站并且插口代码
  • 门户网站设计与开发抽奖小程序
  • 湛江专业建站公司手机网站开发步骤
  • 宁波住房与城乡建设部网站做网站 源代码
  • 苏州住房和城乡建设局网站网签成都招聘网站建设
  • 企业网站管理系统 源码东莞网站排名优化费用
  • 比较好的响应式网站网络服务提供者是谁
  • 做网站需要跟客户了解什么软件媒介
  • 威海seo网站推广企业公示信息查询官网
  • 公司起名打分最准的免费网站wordpress审批优化
  • 茌平网站建设电话外贸兼职平台
  • 上海住房和城乡建设局网站首页专业做医药招聘的网站
  • 亲子网 网站正在建设中wordpress媒体播放器