mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
43 lines
2.3 KiB
HTML
43 lines
2.3 KiB
HTML
<p>给你一个下标从 <strong>0</strong> 开始的整数数组 <code>nums</code> ,它表示英雄的能力值。如果我们选出一部分英雄,这组英雄的 <strong>力量</strong> 定义为:</p>
|
||
|
||
<ul>
|
||
<li><code>i<sub>0</sub></code> ,<code>i<sub>1</sub></code> ,<span style="">... </span><code><span style="">i<sub>k</sub></span></code><span style=""> </span>表示这组英雄在数组中的下标。那么这组英雄的力量为 <code><font face="monospace">max(nums[</font>i<sub>0</sub><font face="monospace">],nums[</font>i<sub>1</sub><font face="monospace">] ... nums[</font><span style="font-size:10.8333px">i<sub>k</sub></span><font face="monospace">])<sup>2</sup> * min(nums[</font>i<sub>0</sub><font face="monospace">],nums[</font>i<sub>1</sub><font face="monospace">] ... nums[</font><span style="font-size:10.8333px">i<sub>k</sub></span><font face="monospace">])</font></code> 。</li>
|
||
</ul>
|
||
|
||
<p>请你返回所有可能的 <strong>非空</strong> 英雄组的 <strong>力量</strong> 之和。由于答案可能非常大,请你将结果对 <code>10<sup>9 </sup>+ 7</code> <strong>取余。</strong></p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b>nums = [2,1,4]
|
||
<b>输出:</b>141
|
||
<b>解释:</b>
|
||
第 1 组:[2] 的力量为 2<sup>2</sup> * 2 = 8 。
|
||
第 2 组:[1] 的力量为 1<sup>2</sup> * 1 = 1 。
|
||
第 3 组:[4] 的力量为 4<sup>2</sup> * 4 = 64 。
|
||
第 4 组:[2,1] 的力量为 2<sup>2</sup> * 1 = 4 。
|
||
第 5 组:[2,4] 的力量为 4<sup>2</sup> * 2 = 32 。
|
||
第 6 组:[1,4] 的力量为 4<sup>2</sup> * 1 = 16 。
|
||
第 7 组:[2,1,4] 的力量为 4<sup>2</sup> * 1 = 16 。
|
||
所有英雄组的力量之和为 8 + 1 + 64 + 4 + 32 + 16 + 16 = 141 。
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b>nums = [1,1,1]
|
||
<b>输出:</b>7
|
||
<b>解释:</b>总共有 7 个英雄组,每一组的力量都是 1 。所以所有英雄组的力量之和为 7 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= nums.length <= 10<sup>5</sup></code></li>
|
||
<li><code>1 <= nums[i] <= 10<sup>9</sup></code></li>
|
||
</ul>
|