mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
66 lines
2.9 KiB
HTML
66 lines
2.9 KiB
HTML
<p>给你两个正整数 <code>left</code> 和 <code>right</code> ,满足 <code>left <= right</code> 。请你计算 <strong>闭区间</strong> <code>[left, right]</code> 中所有整数的 <strong>乘积</strong> 。</p>
|
||
|
||
<p>由于乘积可能非常大,你需要将它按照以下步骤 <strong>缩写</strong> :</p>
|
||
|
||
<ol>
|
||
<li>统计乘积中 <strong>后缀</strong> 0 的数目,并 <strong>移除</strong> 这些 0 ,将这个数目记为 <code>C</code> 。
|
||
|
||
<ul>
|
||
<li>比方说,<code>1000</code> 中有 <code>3</code> 个后缀 0 ,<code>546</code> 中没有后缀 0 。</li>
|
||
</ul>
|
||
</li>
|
||
<li>将乘积中剩余数字的位数记为 <code>d</code> 。如果 <code>d > 10</code> ,那么将乘积表示为 <code><pre>...<suf></code> 的形式,其中 <code><pre></code> 表示乘积最 <strong>开始</strong> 的 <code>5</code> 个数位,<code><suf></code> 表示删除后缀 0 <strong>之后</strong> 结尾的 <code>5</code> 个数位。如果 <code>d <= 10</code> ,我们不对它做修改。
|
||
<ul>
|
||
<li>比方说,我们将 <code>1234567654321</code> 表示为 <code>12345...54321</code> ,但是 <code>1234567</code> 仍然表示为 <code>1234567</code> 。</li>
|
||
</ul>
|
||
</li>
|
||
<li>最后,将乘积表示为 <strong>字符串</strong> <code>"<pre>...<suf>eC"</code> 。
|
||
<ul>
|
||
<li>比方说,<code>12345678987600000</code> 被表示为 <code>"12345...89876e5"</code> 。</li>
|
||
</ul>
|
||
</li>
|
||
</ol>
|
||
|
||
<p>请你返回一个字符串,表示 <strong>闭区间</strong> <code>[left, right]</code> 中所有整数 <strong>乘积</strong> 的 <strong>缩写</strong> 。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b>left = 1, right = 4
|
||
<b>输出:</b>"24e0"
|
||
<strong>解释:</strong>
|
||
乘积为 1 × 2 × 3 × 4 = 24 。
|
||
由于没有后缀 0 ,所以 24 保持不变,缩写的结尾为 "e0" 。
|
||
因为乘积的结果是 2 位数,小于 10 ,所欲我们不进一步将它缩写。
|
||
所以,最终将乘积表示为 "24e0" 。
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>left = 2, right = 11
|
||
<strong>输出:</strong>"399168e2"
|
||
<strong>解释:</strong>乘积为 39916800 。
|
||
有 2 个后缀 0 ,删除后得到 399168 。缩写的结尾为 "e2" 。
|
||
删除后缀 0 后是 6 位数,不需要进一步缩写。
|
||
所以,最终将乘积表示为 "399168e2" 。
|
||
</pre>
|
||
|
||
<p><strong>示例 3:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>left = 371, right = 375
|
||
<strong>输出:</strong>"7219856259e3"
|
||
<strong>解释:</strong>乘积为 7219856259000 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= left <= right <= 10<sup>4</sup></code></li>
|
||
</ul>
|