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

个人微企业网站模板深圳营销型网站建设服务哪家好

个人微企业网站模板,深圳营销型网站建设服务哪家好,云图片手机网站展示,女生做网站前端设计师目录 2681. 英雄的力量 题目描述: 实现代码与解析: 数学规律 原理思路: 2681. 英雄的力量 题目描述: 给你一个下标从 0 开始的整数数组 nums ,它表示英雄的能力值。如果我们选出一部分英雄,这组英雄的…

目录

2681. 英雄的力量

题目描述:

实现代码与解析:

数学规律

原理思路:


2681. 英雄的力量

题目描述:

        给你一个下标从 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] 的力量为 2^2 * 2 = 8 。
第 2 组:[1] 的力量为 1^2 * 1 = 1 。
第 3 组:[4] 的力量为 4^2 * 4 = 64 。
第 4 组:[2,1] 的力量为 2^2 * 1 = 4 。
第 5 组:[2,4] 的力量为 4^2 * 2 = 32 。
第 6 组:[1,4] 的力量为 4^2 * 1 = 16 。
第​ ​​​​​​7 组:[2,1,4] 的力量为 4^2 * 1 = 16 。
所有英雄组的力量之和为 8 + 1 + 64 + 4 + 32 + 16 + 16 = 141 。

示例 :

输入:nums = [1,1,1]
输出:7
解释:总共有 7 个英雄组,每一组的力量都是 1 。所以所有英雄组的力量之和为 7 。

实现代码与解析:

数学规律

class Solution {
public:int mod = 1e9 + 7;int sumOfPower(vector<int>& nums) {sort(nums.begin(), nums.end());long long res = 0, sum = 0;for (int i = 0; i < nums.size(); i++){res = (res + (long long)nums[i] * (long long)nums[i] % mod * (nums[i] + sum)) % mod;sum = (sum * 2 + nums[i]) % mod; }return res;}
};

原理思路:

        分析题目,可以发现,其实英雄能力值之和每个子集的最大值和最小值有关,所有我们先sort排序,然后遍历,让其作为最大值,这是固定的,所以只要找出以 nums[ i ] 为最大值结尾的子集的最小值的和最大值的平方相乘就得出了此种情况的英雄力量的和,最后全加起来,就得到了答案。

        所以关键的核心就时如何求出以 nums[ i ] 为最大值结尾的子集的最小值的和

比如排序后{1, 2, 3, 4}, 当遍历到4时,以其为最大值的子集有多少种?

        当选择1为最小值时,2可选可不选,3可选可不选,这样就是2 * 2 = 4 个,4 * (4 * 4)* 1就为一组力量值。可以发现一组力量值是和元素的个数和最小值有关的。

        那么我们可以总结出递推式,之间算出一个最大值平方需要乘的总和为:sum(nums[i] * 2 ^ 最小值与最大值中间的数字个数),i 从 0 到最大值下标

        这样就可以发现子集最小值总和明显是可以根据前一个的子集最小值总和算出来的。规律如下:

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

相关文章:

  • 泉州微信网站开发公司wordpress增加注册
  • 企业网站找私人做什wordpress nonce
  • 物流网站给做软件下载万能浏览器手机版下载安装
  • 做外卖的网站专业品牌网站建设价格
  • 哪些网站是python做的如何学习网站建设app
  • 绿色大气漂亮dedecms茶叶企业网站设计制作合同模板
  • 门户网站的流程旅游网站首页模板
  • 技术支持 济源网站建设仓储网站建设
  • 福建福清市住房和建设局网站百度网盟推广是什么
  • 整体网站构架网站建设到底属于什么行业
  • 博客建站系统网站建设 中企动力泉州
  • 想学网站建设 如何开始中国建设教育协会报名网站
  • 武昌做网站电子商务网站的设计与实现
  • 怎么看网站有没有被收录海宏集团网站建设方案
  • 制作注册会员的网站如何增加网站访问量
  • 中国农村建设网站wordpress在线qq插件
  • wordpress 友情链接小工具 seo won
  • 国内优秀设计网站推荐wordpress 前端编辑器
  • 做英文行程的网站济南专业网站设计
  • 初级网站开发的自我推荐网站优化工作
  • 体育视频网站建设山东恒昆建设工程有限公司网站
  • 如何建手机网站营销网站模板下载
  • 北京模板网站建站小程序代理运营
  • 淄博便宜网站设上海松江建设发展有限公司网站
  • 做海报兼职网站东莞网站优化效果如何
  • 使用模板怎么建站株洲做网站优化
  • 课程网站建设技术品牌策划公司业务范围
  • 个人资料展示网站恒锐奇 做网站
  • 计算机专业的会学怎么做网站吗免费的商城小程序
  • 做软件与做网站建设有什么区别syntax highlighter for wordpress