1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-11 02:58:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/执行 K 次操作后的最大分数 [maximal-score-after-applying-k-operations].html

45 lines
1.7 KiB
HTML
Raw Normal View History

2023-01-14 00:20:24 +08:00
<p>给你一个下标从 <strong>0</strong> 开始的整数数组 <code>nums</code> 和一个整数 <code>k</code> 。你的 <strong>起始分数</strong><code>0</code></p>
<p>在一步 <strong>操作</strong> 中:</p>
<ol>
<li>选出一个满足 <code>0 &lt;= i &lt; nums.length</code> 的下标 <code>i</code> </li>
<li>将你的 <strong>分数</strong> 增加 <code>nums[i]</code> ,并且</li>
<li><code>nums[i]</code> 替换为 <code>ceil(nums[i] / 3)</code></li>
</ol>
<p>返回在 <strong>恰好</strong> 执行 <code>k</code> 次操作后,你可能获得的最大分数。</p>
<p>向上取整函数 <code>ceil(val)</code> 的结果是大于或等于 <code>val</code> 的最小整数。</p>
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre>
<strong>输入:</strong>nums = [10,10,10,10,10], k = 5
<strong>输出:</strong>50
<strong>解释:</strong>对数组中每个元素执行一次操作。最后分数是 10 + 10 + 10 + 10 + 10 = 50 。
</pre>
<p><strong>示例 2</strong></p>
<pre>
<strong>输入:</strong>nums = [1,10,3,3,3], k = 3
<strong>输出:</strong>17
<strong>解释:</strong>可以执行下述操作:
第 1 步操作:选中 i = 1 nums 变为 [1,<em><strong>4</strong></em>,3,3,3] 。分数增加 10 。
第 2 步操作:选中 i = 1 nums 变为 [1,<em><strong>2</strong></em>,3,3,3] 。分数增加 4 。
2023-12-09 18:42:21 +08:00
第 3 步操作:选中 i = 2 nums 变为 [1,2,<em><strong>1</strong></em>,3,3] 。分数增加 3 。
2023-01-14 00:20:24 +08:00
最后分数是 10 + 4 + 3 = 17 。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= nums.length, k &lt;= 10<sup>5</sup></code></li>
<li><code>1 &lt;= nums[i] &lt;= 10<sup>9</sup></code></li>
</ul>