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

鞍山信息港二手房出租宁波seo外包方案

鞍山信息港二手房出租,宁波seo外包方案,如何自学软件开发,番禺手机网站建设本文属于「征服LeetCode」系列文章之一#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁#xff0c;本系列将至少持续到刷完所有无锁题之日为止#xff1b;由于LeetCode还在不断地创建新题#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章… 本文属于「征服LeetCode」系列文章之一这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁本系列将至少持续到刷完所有无锁题之日为止由于LeetCode还在不断地创建新题本系列的终止日期可能是永远。在这一系列刷题文章中我不仅会讲解多种解题思路及其优化还会用多种编程语言实现题解涉及到通用解法时更将归纳总结出相应的算法模板。 为了方便在PC上运行调试、分享代码文件我还建立了相关的仓库https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解还可以一同分享给他人。 由于本系列文章的内容随时可能发生更新变动欢迎关注和收藏征服LeetCode系列文章目录一文以作备忘。 给你一个下标从 0 开始的整数数组 nums 它表示英雄的能力值。如果我们选出一部分英雄这组英雄的 力量 定义为 i0 i1 … ik 表示这组英雄在数组中的下标。那么这组英雄的力量为 max(nums[i0],nums[i1] ... nums[ik])2 * min(nums[i0],nums[i1] ... nums[ik]) 。 请你返回所有可能的 非空 英雄组的 力量 之和。由于答案可能非常大请你将结果对 109 7 取余。 示例 1 输入nums [2,1,4] 输出141 解释 第 1 组[2] 的力量为 22 * 2 8 。 第 2 组[1] 的力量为 12 * 1 1 。 第 3 组[4] 的力量为 42 * 4 64 。 第 4 组[2,1] 的力量为 22 * 1 4 。 第 5 组[2,4] 的力量为 42 * 2 32 。 第 6 组[1,4] 的力量为 42 * 1 16 。 第​ ​​​​​​7 组[2,1,4] 的力量为 42​​​​​​​ * 1 16 。 所有英雄组的力量之和为 8 1 64 4 32 16 16 141 。示例 2 输入nums [1,1,1] 输出7 解释总共有 7 个英雄组每一组的力量都是 1 。所以所有英雄组的力量之和为 7 。提示 1 nums.length 10^51 nums[i] 10^9 贡献法与本题类似的但不同的 907. 子数组的最小值之和1508. 子数组和排序后的区间和1856. 子数组最小乘积的最大值2104. 子数组范围和2281. 巫师的总力量和但比本题难。与 2281 同样使用单调栈获取贡献区间的还有很多题目如2818. 操作使得分最大 解法 贡献法 由于元素的顺序不影响答案先排序。 设有 a , b , c , d , e a,b,c,d,e a,b,c,d,e 五个数顺序从小到大。如果把 d d d 当成最大值 如果只选 d d d 单独一个数那么力量为 d 3 d^3 d3 。选 a a a 为最小值由于中间的 b b b 和 c c c 可选可不选一共有 2 2 2^2 22 种方案所以力量总和为 d 2 ⋅ a ⋅ 2 2 d^2\cdot a\cdot 2^2 d2⋅a⋅22 。选 b b b 为最小值由于中间的 c c c 可选可不选一共有 2 1 2^1 21 种方案所以力量总和为 d 2 ⋅ b ⋅ 2 1 d^2\cdot b\cdot 2^1 d2⋅b⋅21 。选 c c c 为最小值只有 2 0 1 2^01 201 种方案所以力量总和为 d 2 ⋅ c ⋅ 2 0 d^2\cdot c\cdot 2^0 d2⋅c⋅20 。 因此当 d d d 为最大值时 d d d 及其左侧元素对答案的贡献为 d 3 d 2 ⋅ ( a ⋅ 2 2 b ⋅ 2 1 c ⋅ 2 0 ) d^3 d^2\cdot (a\cdot 2^2 b\cdot 2^1 c\cdot 2^0) d3d2⋅(a⋅22b⋅21c⋅20) 令 s a ⋅ 2 2 b ⋅ 2 1 c ⋅ 2 0 sa\cdot 2^2 b\cdot 2^1 c\cdot 2^0 sa⋅22b⋅21c⋅20 上式为 d 3 d 2 ⋅ s d 2 ⋅ ( d s ) d^3 d^2\cdot s d^2\cdot(ds) d3d2⋅sd2⋅(ds) 继续把 e e e 当成最大值观察 s s s 如何变化也就是 a , b , c , d a,b,c,d a,b,c,d 作为最小值的贡献 a ⋅ 2 3 b ⋅ 2 2 c ⋅ 2 1 d ⋅ 2 0 2 ⋅ ( a ⋅ 2 2 b ⋅ 2 1 c ⋅ 2 0 ) d ⋅ 2 0 2 ⋅ s d \begin{aligned} \ a\cdot 2^3 b\cdot 2^2 c\cdot 2^1 d\cdot 2^0\\ \ 2\cdot(a\cdot 2^2 b\cdot 2^1 c\cdot 2^0) d\cdot 2^0\\ \ 2\cdot s d\\ \end{aligned} ​ a⋅23b⋅22c⋅21d⋅20 2⋅(a⋅22b⋅21c⋅20)d⋅20 2⋅sd​ 这意味着我们不需要枚举最小值只需要枚举最大值就可以把 s s s 递推计算出来。 class Solution { public:int sumOfPower(vectorint nums) {sort(nums.begin(), nums.end());const int mod 1e9 7;int ans 0, s 0;for (long long x : nums) { // x作为最大值ans (ans x * x % mod * (x s)) % mod; // 中间模1次防止溢出s (s * 2 x) % mod; // 递推计算下个s}return ans;} };复杂度分析 时间复杂度 O ( n log ⁡ n ) O(n\log n) O(nlogn) 其中 n n n 为 nums \textit{nums} nums 的长度。瓶颈在排序上。空间复杂度 O ( 1 ) O(1) O(1) 。忽略排序的栈空间仅用到若干额外变量。 思考题把「子序列」改成「子数组」要怎么做
http://www.hkea.cn/news/14372741/

相关文章:

  • 两学一做山西答题网站网站托管如何收费
  • 高密做网站的价格专门做调查问卷的网站
  • 毕设代做的网站跨境电商网站建设
  • 空间商网站ip被攻击后换ip微信域名防封跳转系统
  • 南宁百度seo软件北京核心词优化市场
  • 如何让客户主动找你做网站网站开发报价
  • 在国外建设网站怎么做网站链接支付
  • 好的免费网站建站平台重庆建设集团官方网站
  • 做携程怎样的网站网页设计作品展示图片
  • 网站开发职业前景深圳公司设立
  • 海豚一键做淘宝网站固原网络推广
  • 高端网站建设 南京在线收录
  • 重庆手机网站推广方法redis网站开发教程
  • 个人网站的名字怎样提高网站打开速度慢
  • 梅州做网站需要多少钱河北省 建设执业注册中心网站
  • 在线转格式网站怎么做wordpress 图片的设置密码
  • 网站设计奖在深圳如何注册公司
  • 雷州网站开发公司网络营销的八种方式
  • 福建省网站建设有限公司哪些网站做的人比较少
  • 企业形象网站建设意义二次开发培训
  • 网站建设方案推广南京网站制作公司有哪些
  • 做jsp网站用哪些软件网站兼容浏览器
  • 网站怎样添加百度地图网站建设设计大作业
  • 手机网站 图标亳州建设网站公司
  • 上海兼职网站制作网页设计实训总结三百字
  • 电子商务网站的建设与规划网站登录设计欣赏
  • app和网站的成本区别小说章节收费网站建设
  • 企业做网站优劣wordpress+5.0
  • 长沙的网站建设wordpress自适应 slide
  • 计算机企业网站建设论文网站构建工具