LeetCode 2270. 分割数组的方案数(前缀和)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

给你一个下标从 0 开始长度为 n 的整数数组 nums 。
如果以下描述为真,那么 nums 在下标 i 处有一个 合法的分割

  • i + 1 个元素的和 大于等于 剩下的 n - i - 1 个元素的和。
  • 下标 i 的右边 至少有一个 元素,也就是说下标 i 满足 0 <= i < n - 1 。

请你返回 nums 中的 合法分割 方案数

示例 1:
输入:nums = [10,4,-8,7]
输出:2
解释:
总共有 3 种不同的方案可以将 nums 分割成两个非空的部分:
- 在下标 0 处分割 nums 。那么第一部分为 [10] ,和为 10 。第二部分为 [4,-8,7] ,和为 3 。因为 10 >= 3 ,所以 i = 0 是一个合法的分割。
- 在下标 1 处分割 nums 。那么第一部分为 [10,4] ,和为 14 。第二部分为 [-8,7] ,和为 -1 。因为 14 >= -1 ,所以 i = 1 是一个合法的分割。
- 在下标 2 处分割 nums 。那么第一部分为 [10,4,-8] ,和为 6 。第二部分为 [7] ,和为 7 。因为 6 < 7 ,所以 i = 2 不是一个合法的分割。
所以 nums 中总共合法分割方案受为 2 。示例 2:
输入:nums = [2,3,1,0]
输出:2
解释:
总共有 2 种 nums 的合法分割:
- 在下标 1 处分割 nums 。那么第一部分为 [2,3] ,和为 5 。第二部分为 [1,0] ,和为 1 。因为 5 >= 1 ,所以 i = 1 是一个合法的分割。
- 在下标 2 处分割 nums 。那么第一部分为 [2,3,1] ,和为 6 。第二部分为 [0] ,和为 0 。因为 6 >= 0 ,所以 i = 2 是一个合法的分割。提示:
2 <= nums.length <= 10^5
-10^5 <= nums[i] <= 10^5

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/number-of-ways-to-split-array
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 记录前缀和 prevsum,剩余的和 sum(nums) - prevsum
class Solution:def waysToSplitArray(self, nums: List[int]) -> int:s = sum(nums)ans, prevsum = 0, 0for i in range(len(nums)-1):prevsum += nums[i]if prevsum >= s-prevsum:ans += 1return ans

136 ms 26.4 MB Python3


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/471009.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python网络爬虫系列(五)——数据提取 jsonpath模块

一、数据提取概述 知识点 了解 响应内容的分类了解 xml和html的区别 1. 响应内容的分类 在发送请求获取响应之后&#xff0c;可能存在多种不同类型的响应内容&#xff1b;而且很多时候&#xff0c;我们只需要响应内容中的一部分数据 结构化的响应内容 json字符串 可以使用re、…

Java学习心得

在上学期的学习中对GUI设计方面的只是已经有了一些了解&#xff0c;但还是有所欠缺&#xff0c;寒假自己又自学学了一些GUI设计和其他方面的知识。在本学期的学习中我感觉很有帮助&#xff0c;所以在本学期的学习中我会学习某一章的内容的时候&#xff0c;我会积极听讲&#xf…

LeetCode 2271. 毯子覆盖的最多白色砖块数(前缀和+二分查找)

文章目录1. 题目2. 解题1. 题目 给你一个二维整数数组 tiles &#xff0c;其中 tiles[i] [li, ri] &#xff0c;表示所有在 li < j < ri 之间的每个瓷砖位置 j 都被涂成了白色。 同时给你一个整数 carpetLen &#xff0c;表示可以放在 任何位置 的一块毯子。 请你返回…

Nimbus三Storm源码分析--Nimbus启动过程

Nimbus server, 首先从启动命令开始, 同样是使用storm命令"storm nimbus”来启动看下源码, 此处和上面client不同, jvmtype"-server", 最终调用"backtype.storm.daemon.nimbus"的mainnimbus是用clojure实现的, 但是clojure是基于JVM的, 所以在最终发布…

python网络爬虫系列(六)——数据提取 lxml模块

一、数据提取-lxml模块 知识点 了解 lxml模块和xpath语法的关系了解 lxml模块的使用场景了解 lxml模块的安装了解 谷歌浏览器xpath helper插件的安装和使用掌握 xpath语法-基础节点选择语法掌握 xpath语法-节点修饰语法掌握 xpath语法-其他常用语法掌握 lxml模块中使用xpath语…

LeetCode 2273. 移除字母异位词后的结果数组

文章目录1. 题目2. 解题1. 题目 给你一个下标从 0 开始的字符串 words &#xff0c;其中 words[i] 由小写英文字符组成。 在一步操作中&#xff0c;需要选出任一下标 i &#xff0c;从 words 中 删除 words[i] 。其中下标 i 需要同时满足下述两个条件&#xff1a; 0 < i …

python网络爬虫系列(七)——selenium的介绍 selenium定位获取标签对象并提取数据 selenium的其它使用方法

一、selenium的介绍 知识点&#xff1a; 了解 selenium的工作原理了解 selenium以及chromedriver的安装掌握 标签对象click点击以及send_keys输入 1. selenium运行效果展示 Selenium是一个Web的自动化测试工具&#xff0c;最初是为网站自动化测试而开发的&#xff0c;Seleniu…

LeetCode 2274. 不含特殊楼层的最大连续楼层数

文章目录1. 题目2. 解题1. 题目 Alice 管理着一家公司&#xff0c;并租用大楼的部分楼层作为办公空间。 Alice 决定将一些楼层作为 特殊楼层 &#xff0c;仅用于放松。 给你两个整数 bottom 和 top &#xff0c;表示 Alice 租用了从 bottom 到 top&#xff08;含 bottom 和 t…

python网络爬虫系列(八)——常见的反爬手段和解决方法

常见的反爬手段和解决思路 学习目标 了解 服务器反爬的原因了解 服务器常反什么样的爬虫了解 反爬虫领域常见的一些概念了解 反爬的三个方向了解 常见基于身份识别进行反爬了解 常见基于爬虫行为进行反爬了解 常见基于数据加密进行反爬 1 服务器反爬的原因 爬虫占总PV(PV是指…

PAYPAL 支付,sandbox测试的时候遇到异常:请求被中止: 未能创建 SSL/TLS 安全通道,以及解决方法。...

场景描述&#xff1a; 我公司的网站之前就已经开发好了下单支持paypal支付&#xff0c;当然&#xff0c;这个是其他同事开发的。前段时间&#xff0c;主管让我在另一个场景开发支持使用paypal支付&#xff0c;当时花了些时间看看关于paypal代码&#xff0c;然后就尝试着写了&am…

LeetCode 2275. 按位与结果大于零的最长组合(位运算)

文章目录1. 题目2. 解题1. 题目 对数组 nums 执行 按位与 相当于对数组 nums 中的所有整数执行 按位与 。 例如&#xff0c;对 nums [1, 5, 3] 来说&#xff0c;按位与等于 1 & 5 & 3 1 。同样&#xff0c;对 nums [7] 而言&#xff0c;按位与等于 7 。 给你一个…

python网络爬虫系列(九)——打码平台的使用

验证码处理 学习目标 了解 验证码的相关知识掌握 图片识别引擎的使用了解 常见的打码平台掌握 通过打码平台处理验证码的方法 1.图片验证码 1.1 什么是图片验证码 验证码&#xff08;CAPTCHA&#xff09;是“Completely Automated Public Turing test to tell Computers an…

哎呀呀

大概的浏览了一下教材&#xff0c;还有这么几个问题不了解。 1.如何进行软件开发&#xff1f; 2.什么是瀑布模型、快速原型模型、敏捷模型和混合模型&#xff1f; 3.增量模型、演化模型、螺旋模型、喷泉模型和智能模型怎么运用&#xff1f; 4.需求的3个层次是什么&#xff1f; …

LeetCode 2278. 字母在字符串中的百分比

文章目录1. 题目2. 解题1. 题目 给你一个字符串 s 和一个字符 letter &#xff0c;返回在 s 中等于 letter 字符所占的 百分比 &#xff0c;向下取整到最接近的百分比。 示例 1&#xff1a; 输入&#xff1a;s "foobar", letter "o" 输出&#xff1a;3…

python网络爬虫系列(十)——chrome在爬虫中的使用

chrome浏览器使用方法介绍 学习目标 了解 新建隐身窗口的目的了解 chrome中network的使用了解 寻找登录接口的方法 1 新建隐身窗口 浏览器中直接打开网站&#xff0c;会自动带上之前网站时保存的cookie&#xff0c;但是在爬虫中首次获取页面是没有携带cookie的&#xff0c;这…

iOS之加密的三种方法

1 //需要导入 #import <CommonCrypto/CommonCryptor.h> 2 3 MD5加密 4 5 NSString *str "加密的内容"; 6 7 //转换成C语言的字符串 8 9 const char *cStr[str UTF8String]; 10 11 //MD5加密的结果是128位&#xff0c;需要开辟一个1…

LeetCode 2279. 装满石头的背包的最大数量(贪心)

文章目录1. 题目2. 解题1. 题目 现有编号从 0 到 n - 1 的 n 个背包。 给你两个下标从 0 开始的整数数组 capacity 和 rocks 。 第 i 个背包最大可以装 capacity[i] 块石头&#xff0c;当前已经装了 rocks[i] 块石头。 另给你一个整数 additionalRocks &#xff0c;表示你可以…

python网络爬虫系列(十一)——JS的解析

JS的解析 学习目标&#xff1a; 了解 定位js的方法了解 添加断点观察js的执行过程的方法应用 js2py获取js的方法 1 确定js的位置 对于前面人人网的案例&#xff0c;我们知道了url地址中有部分参数&#xff0c;但是参数是如何生成的呢&#xff1f; 毫无疑问&#xff0c;参数肯…

怎么在前台取的ViewBag中的值

如果是list<>可以直接遍历VieweBag同样可以遍历但只要通过断点调试,不难发现,ViewBag中的值,在前台其实是可以点的.这是一个viewbag.ViewBag.publishOne前台取值直接点就可以啦ViewBag.publishOne.Town 来自为知笔记(Wiz)转载于:https://www.cnblogs.com/funn0812/p/5262…

[Leetcode]@python 107. Binary Tree Level Order Traversal II

题目链接 https://leetcode.com/problems/binary-tree-level-order-traversal-ii/ 题目原文 Given a binary tree, return the bottom-up level order traversal of its nodes values. (ie, from left to right, level by level from leaf to root). For example: Given binary…