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)/统计强大整数的数目 [count-the-number-of-powerful-integers].html

48 lines
2.6 KiB
HTML
Raw Normal View History

2024-01-09 10:57:06 +08:00
<p>给你三个整数&nbsp;<code>start</code>&nbsp;<code>finish</code>&nbsp;&nbsp;<code>limit</code>&nbsp;。同时给你一个下标从&nbsp;<strong>0</strong>&nbsp;开始的字符串&nbsp;<code>s</code>&nbsp;,表示一个 <strong></strong>&nbsp;整数。</p>
<p>如果一个 <strong></strong>&nbsp;整数&nbsp;<code>x</code> 末尾部分是&nbsp;<code>s</code>&nbsp;(换句话说,<code>s</code>&nbsp;<code>x</code>&nbsp;<strong>后缀</strong>),且 <code>x</code>&nbsp;中的每个数位至多是 <code>limit</code>&nbsp;,那么我们称 <code>x</code>&nbsp;<strong>强大的</strong>&nbsp;</p>
<p>请你返回区间&nbsp;<code>[start..finish]</code>&nbsp;内强大整数的&nbsp;<strong>总数目</strong>&nbsp;</p>
<p>如果一个字符串 <code>x</code>&nbsp;<code>y</code>&nbsp;中某个下标开始(<strong>包括</strong>&nbsp;<code>0</code>&nbsp;),到下标为&nbsp;<code>y.length - 1</code>&nbsp;结束的子字符串,那么我们称&nbsp;<code>x</code>&nbsp;&nbsp;<code>y</code>&nbsp;的一个后缀。比方说,<code>25</code>&nbsp;&nbsp;<code>5125</code>&nbsp;的一个后缀,但不是&nbsp;<code>512</code>&nbsp;的后缀。</p>
<p>&nbsp;</p>
<p><strong class="example">示例 1</strong></p>
<pre>
<b>输入:</b>start = 1, finish = 6000, limit = 4, s = "124"
<b>输出:</b>5
<b>解释:</b>区间 [1..6000] 内的强大数字为 124 1124 2124 3124 和 4124 。这些整数的各个数位都 &lt;= 4 且 "124" 是它们的后缀。注意 5124 不是强大整数,因为第一个数位 5 大于 4 。
这个区间内总共只有这 5 个强大整数。
</pre>
<p><strong class="example">示例 2</strong></p>
<pre>
<b>输入:</b>start = 15, finish = 215, limit = 6, s = "10"
<b>输出:</b>2
<b>解释:</b>区间 [15..215] 内的强大整数为 110 和 210 。这些整数的各个数位都 &lt;= 6 且 "10" 是它们的后缀。
这个区间总共只有这 2 个强大整数。
</pre>
<p><strong class="example">示例 3</strong></p>
<pre>
<b>输入:</b>start = 1000, finish = 2000, limit = 4, s = "3000"
<b>输出:</b>0
<b>解释:</b>区间 [1000..2000] 内的整数都小于 3000 ,所以 "3000" 不可能是这个区间内任何整数的后缀。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= start &lt;= finish &lt;= 10<sup>15</sup></code></li>
<li><code>1 &lt;= limit &lt;= 9</code></li>
<li><code>1 &lt;= s.length &lt;= floor(log<sub>10</sub>(finish)) + 1</code></li>
<li><code>s</code>&nbsp;数位中每个数字都小于等于&nbsp;<code>limit</code>&nbsp;</li>
<li><code>s</code>&nbsp;不包含任何前导 0 。</li>
</ul>