力扣201周周赛题解记录下

  • 题目
  • 思路与算法
  • 代码实现

题目

  1. 和为目标值的最大数目不重叠非空子数组数目


1547. 切棍子的最小成本


在这里插入图片描述

思路与算法

  1. 第3题还是一个简单的模拟,用set也行,用map也行,贪心就行,都可以
  2. 第4题是类似之前戳气球的类型的dp题,没什么太大区别,前缀和的技巧,再写出动态转移方程就可以了。注意代码细节。

代码实现

  1. 和为目标值的最大数目不重叠非空子数组数目
class Solution {public int maxNonOverlapping(int[] nums, int target) {int cnt = 0;HashSet<Integer> set = new HashSet<>();set.add(0);int sum = 0;for (int num : nums) {sum += num;if (set.contains(sum - target)) {cnt++;sum = 0;set.clear();}set.add(sum);} return cnt;}
}
  1. 切棍子的最小成本
class Solution {public int minCost(int n, int[] cuts) {Arrays.sort(cuts);int len = cuts.length;// 前缀和数组int[] preSum = new int[len + 2];preSum[0] = 0;for (int i = 1; i < len + 1; i++) {preSum[i] = cuts[i - 1];}preSum[len + 1] = n;// dp[i,j]表示切割区间[i,j]的成本,我们求的是最小值,因此初始化为最大值int[][] dp = new int[len + 2][len + 2];for (int i = 0; i < dp.length; i++) {Arrays.fill(dp[i], Integer.MAX_VALUE);}for (int i = 0; i <= len; i++) {dp[i][i + 1] = 0;}// [i,j]之间的话费,k为[i,j]之间的移动指针,用于遍历找到所有方案for (int i = len; i >= 0; i--) {for (int j = i + 1; j <= len + 1; j++) {for (int k = i + 1; k < j; k++) {int cost = preSum[j] - preSum[i];// dp转移方程dp[i][j] = Math.min(dp[i][j], dp[i][k] + dp[k][j] + cost);}}}return dp[0][len + 1];}
}

20200815:力扣201周周赛题解记录下相关推荐

  1. 20200814:力扣201周周赛题解记录上

    力扣201周周赛题解记录上 题目 思路与算法 代码实现 写在最后 题目 整理字符串 找出第 N 个二进制字符串中的第 K 位 思路与算法 第一题这种类似消消乐的东西都是直接用栈来实现的,注意代码细节 ...

  2. 20201007:力扣209周周赛题解记录(上)

    力扣209周周赛题解记录(上) 题目 思路与算法 代码实现 复杂度分析 题目 特殊数组的特征值 奇偶树 思路与算法 第一题单纯的暴力就行,应该是可以用二分之类的改善复杂度,没必要赘述,直接上暴力遍历, ...

  3. 20200819:力扣202周周赛题解记录

    力扣202周周赛题解记录 题目一:[存在连续三个奇数的数组](https://leetcode-cn.com/problems/three-consecutive-odds/) 代码实现 题目二:[使 ...

  4. 20200729:力扣199周周赛题解(下)

    力扣199周周赛题解(下) 题目三:好叶子节点对的数量 给你二叉树的根节点 root 和一个整数 distance . 如果二叉树中两个叶节点之间的 最短路径长度 小于或者等于 distance ,那 ...

  5. 20201008:力扣209周周赛题解(下)

    力扣209周周赛题解(下) 题目 思路与算法 代码实现 写在最后 题目 可见点的最大数目 使整数变为 0 的最少操作次数 思路与算法 第一题注意添加角度时atan2的范围是正负π,因此注意差值可能超出 ...

  6. 20200907:力扣203周周赛题解记录

    力扣203周周赛题解 题目一: 1.圆形赛道上经过次数最多的扇区 示例 解题思路与代码实现 本题的思路为优化整个起点与终点,理清关系,起点到终点的过程中,分为起点小于终点,起点大于终点,起点等于终点, ...

  7. 20201219:力扣219周周赛题解

    力扣219周周赛题解 题目 思路与算法 代码实现 复杂度分析 题目 比赛中的配对次数 十-二进制数的最少数目 石子游戏 VII 堆叠长方体的最大高度 思路与算法 比赛中的配对次数 两两比赛,淘汰剩一支 ...

  8. (补)20200911:力扣204周周赛题解下

    力扣204周周赛题解下 题目 思路与算法 代码实现 写在最后 题目 3.1568. 使陆地分离的最少天数 思路与算法 本周周赛第三题勉强可以看看,第四题超出我目前的水平,跳过.第三题是一个典型的dfs ...

  9. 20200910:力扣204周周赛题解上(Java/Python/Cpp)

    力扣204周周赛题解上 题目 思路与算法 代码实现 写在最后 题目 1.1566. 重复至少 K 次且长度为 M 的模式 2.1567. 乘积为正数的最长子数组长度 思路与算法 热身题不要求算法技巧, ...

最新文章

  1. java---编写一个方法,返回一个int型的二维数组,数组中的元素通过解析字符串参数获得。
  2. 华为鸿蒙系统内部消息,华为鸿蒙系统内部曝光,并且将于年底发布?网友:还能再假点?...
  3. Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略
  4. C++11 POD类型
  5. pdfminer3k 官方文档_IPFS官方周报112期
  6. 【MFC系列-第21天】GDI算法实战——过渡色
  7. 2021电商618生态洞察报告
  8. Oracle拆分字符串,字符串分割的函数。
  9. mysql 转ascii_MySQL ascll()函数
  10. 【转】linux下cpio命令使用
  11. ArcGis学习资料汇总整理
  12. 5G垂直领域:华为智慧园区
  13. mac 配置host
  14. 常用网站提交入口汇总让互联网收录你的网站
  15. 【老罗笔记】异类(Outliers)
  16. CG原画绘画教程之人物-张聪-专题视频课程
  17. 今年世界杯预测(阿根廷队冠军)
  18. 运维部门工作总结_运维部年终工作总结范文
  19. 计算机组成原理第八章知识导图,计算机组成原理第八章课后部分答案图文.pdf...
  20. sctp 编程接口指南

热门文章

  1. ​京东云:原来落地 AI 应用是这么回事儿!
  2. Wi-Fi 6 认证计划启动:开启 Wi-Fi 新纪元
  3. 程序员 520 脱单指南!
  4. 作为外包,你有过不甘吗?| 畅言
  5. 2018 年程序员求生欲测试题(全国卷)
  6. 动我 Java?是时候让甲骨文退休了!
  7. 大数据“杀熟不杀生”;微信朋友圈广告没完;美团打车撒币上海 | 一周业界事
  8. 蒋涛:重新回归的我,将带领 CSDN 全方位升级,为 AI 转型者打造一站式平台
  9. 程序员除了编代码,还能做哪些职业规划?
  10. 计算机科学渗透信息论的思想,信息系统思想在高中地理课程教学中的渗透方法分析...