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

杭州seo百度关键词排名推广抖音seo公司帝搜平台

杭州seo百度关键词排名推广,抖音seo公司帝搜平台,宜昌网页设计,什么平台能推广项目文章目录 Power of Heroes 英雄的力量问题描述#xff1a;分析代码Math Tag Power of Heroes 英雄的力量 问题描述#xff1a; 给你一个下标从 0 开始的整数数组 nums #xff0c;它表示英雄的能力值。如果我们选出一部分英雄#xff0c;这组英雄的 力量 定义为#xff… 文章目录 Power of Heroes 英雄的力量问题描述分析代码Math Tag Power of Heroes 英雄的力量 问题描述 给你一个下标从 0 开始的整数数组 nums 它表示英雄的能力值。如果我们选出一部分英雄这组英雄的 力量 定义为 i 0 i 1 . . . i k i_0 i_1 ... i_k i0​i1​...ik​ 表示这组英雄在数组中的下标。那么这组英雄的力量为 m a x ( n u m s [ i 0 ] , n u m s [ i 1 ] . . . n u m s [ i k ] ) 2 ∗ m i n ( n u m s [ i 0 ] , n u m s [ i 1 ] . . . n u m s [ i k ] ) max(nums[i_0],nums[i_1] ... nums[i_k])2 * mi_n(nums[i_0],nums[i_1] ... nums[i_k]) max(nums[i0​],nums[i1​]...nums[ik​])2∗min​(nums[i0​],nums[i1​]...nums[ik​]) 。 请你返回所有可能的 非空 英雄组的 力量 之和。由于答案可能非常大请你将结果对 10^9 7 取余。 1 n u m s . l e n g t h 1 0 5 1 n u m s [ i ] 1 0 9 1 nums.length 10^5\\ 1 nums[i] 10^9 1nums.length1051nums[i]109 分析 一次周赛的hard当时没时间做。 一开始没看清问题的意思以为要计算子数组而实际上是要求子集。 子集也可以认为是原数组的一个子序列虽然这个说法不是很严谨。 假如有一个子序列这个子序列的 p o w e r power power就是 m a x ∗ m a x ∗ m i n max*max*min max∗max∗min. 暴力 如果是使用暴力的方式就是枚举所有的子序列然后对每个子序列进行找 m a x m i n maxmin maxmin。 以当前数组的规模可能有 2 100000 2^{100000} 2100000个子序列很明显这样不可能即使可以枚举出所有的子序列在计算power的过程中的时间复杂度也是 O ( L ) O(L) O(L),和子序列的长度有关。 既然是找最大和最小那就先排序从小到大。因为是找子序列所以排个序不会影响最终结果。 假设区间 [ j , i ] , i j [j,i],ij [j,i],ij,那么必然 a [ i ] a [ j ] a[i]a[j] a[i]a[j]此时以 a [ i ] a[i] a[i]为最大的子序列就可以计算出来,即 2 i 2^i 2i个,从左向右计算: a [ 0 ] a[0] a[0]为 m i n min min时可以与 a [ i ] a[i] a[i]构造的序列数量为 2 i − 1 2^{i-1} 2i−1它们可以为最终的ans提供 a [ 0 ] ∗ a [ i ] ∗ 2 i − 1 a[0]*a[i]*2^{i-1} a[0]∗a[i]∗2i−1. 同理可以计算得到 a [ 1 ] ∗ a [ i ] ∗ 2 i − 2 a[1]*a[i]*2^{i-2} a[1]∗a[i]∗2i−2. a [ 2 ] ∗ a [ i ] ∗ 2 i − 3 a[2]*a[i]*2^{i-3} a[2]∗a[i]∗2i−3. a [ 3 ] ∗ a [ i ] ∗ 2 i − 4 a[3]*a[i]*2^{i-4} a[3]∗a[i]∗2i−4. … a [ i − 2 ] ∗ a [ i ] ∗ 2 i − 1 − i 2 a[i-2]*a[i]*2^{i-1-i2} a[i−2]∗a[i]∗2i−1−i2 a [ i − 1 ] ∗ a [ i ] ∗ 2 i − 1 − i 1 a[i-1]*a[i]*2^{i-1-i1} a[i−1]∗a[i]∗2i−1−i1 最后还要补一个 a [ i ] 3 a[i]^3 a[i]3单个的也要算。 到此以a[i]为最大的所有子序列的power都可以计算出。 p [ i ] a [ i ] 3 a [ 0 ] ∗ a [ i ] ∗ 2 i − 1 a [ 1 ] ∗ a [ i ] ∗ 2 i − 2 . . a [ i − 1 ] ∗ a [ i ] ∗ 2 i − 1 − i 1 p [ i ] a [ i ] ∗ ( a [ i ] 2 a [ 0 ] ∗ 2 i − 1 a [ 1 ] ∗ 2 i − 2 . . a [ i − 1 ] ∗ 2 i − 1 − i 1 ) p[i] a[i]^3 a[0]*a[i]*2^{i-1} a[1]*a[i]*2^{i-2} .. a[i-1]*a[i]*2^{i-1-i1}\\ p[i] a[i]*( a[i]^2 a[0]*2^{i-1} a[1]*2^{i-2} .. a[i-1]*2^{i-1-i1}) p[i]a[i]3a[0]∗a[i]∗2i−1a[1]∗a[i]∗2i−2..a[i−1]∗a[i]∗2i−1−i1p[i]a[i]∗(a[i]2a[0]∗2i−1a[1]∗2i−2..a[i−1]∗2i−1−i1) 如果此时让k i1,即右移一位 p [ k ] a [ k ] ∗ ( a [ k ] 2 a [ 0 ] ∗ 2 i − 1 ∗ 2 a [ 1 ] ∗ 2 i − 2 ∗ 2 . . a [ i − 1 ] ∗ 2 i − 1 − i 1 ∗ 2 a [ i ] ) p[k] a[k]*( a[k]^2 a[0]*2^{i-1}*2 a[1]*2^{i-2}*2 .. a[i-1]*2^{i-1-i1}*2 a[i])\\ p[k]a[k]∗(a[k]2a[0]∗2i−1∗2a[1]∗2i−2∗2..a[i−1]∗2i−1−i1∗2a[i]) 由于右端点的移动新增了1位a[k],导致一部分同时乘2。 假设计算下标 i i i时 令 S i a [ 0 ] ∗ 2 i − 1 a [ 1 ] ∗ 2 i − 2 . . a [ i − 1 ] ∗ 2 i − 1 − i 1 S_i a[0]*2^{i-1} a[1]*2^{i-2} .. a[i-1]*2^{i-1-i1} Si​a[0]∗2i−1a[1]∗2i−2..a[i−1]∗2i−1−i1 那么 p [ i ] a [ i ] ∗ ( a [ i ] 2 S i ) p[i] a[i]*( a[i]^2 S_i) p[i]a[i]∗(a[i]2Si​) 而当计算下标 k k k时不需要重复计算 这一部分S而是可以通过前一个i的S来计算出当前所需要的 S k S_k Sk​。 S k 2 ∗ S i a [ i − 1 ] S_k 2*S_i a[i-1] Sk​2∗Si​a[i−1] p [ k ] a [ k ] ∗ ( a [ k ] 2 S k ) ; p[k] a[k]*( a[k]^2 S_k); p[k]a[k]∗(a[k]2Sk​); 计算过程中还需要注意取余 代码 Math class Solution {long MOD (long)1e97;public int sumOfPower(int[] nums) { Arrays.sort(nums);long sum 0,s 0;int n nums.length; for(int i0;in;i){long cur ((long)nums[i])%MOD;long pow (cur*cur)%MOD; sum (sum (pow*((cur s)%MOD))%MOD)%MOD;s ( 2*s cur)%MOD; }return (int)sum;} }时间复杂度 O ( N L o g N ) O(NLogN) O(NLogN) 空间复杂度 O ( L o g N ) O(LogN) O(LogN) Tag Array Math Sort
http://www.w-s-a.com/news/880638/

相关文章:

  • 网站建设和维护待遇怎样c 做的网站又哪些
  • 淮南网站推广网站开发行业前景
  • 丽水市龙泉市网站建设公司江门手机模板建站
  • 做化妆品注册和注册的网站有哪些wordpress加关键字
  • 四川新站优化php笑话网站源码
  • 外贸类网站酷玛网站建设
  • 合肥网站设计建设南宁网站seo推广优化公司
  • 临沂百度网站7x7x7x7x8黄全场免费
  • 海洋牧场网站建设大良网站设计价格
  • 手机端网站关键字排名北京seo公司哪家好
  • 福建建设培训中心网站网站建站服务公司地址
  • 青岛网站优化快速排名企业网址怎么整
  • 做公司网站用什么系统seo搜索排名优化方法
  • dw怎么做网站标题图标做网站重庆
  • 机场建设相关网站公司官网设计制作
  • 大学网站建设的目标技术支持 优府网络太原网站建设
  • wordpress设置密码访问带提示广州做网站优化哪家专业
  • 如何帮人做网站赚钱西安室内设计公司排名
  • 房产网站建设产品网站域名和邮箱域名
  • 网站建设核心优势seo求职信息
  • 网站手册自己在百度上可以做网站吗
  • 影楼网站源码建行业网站的必要性
  • 深圳app网站设计软件开发公司税收优惠政策
  • 北京市中关村有哪家可以做网站维护客户管理系统 wordpress
  • 做网站拉客户有效吗全景图网页制作工具
  • 网站建设公司行业建设网站需要提供什么资料
  • 别人的做网站网页打不开图片
  • 北京专业网站设计推荐怎么建立网站网址
  • 上海网站建设开发公司哪家好网站数据搬家
  • 杭州建站平台哪里有免费的网站推广软件