mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
36 lines
1.5 KiB
HTML
36 lines
1.5 KiB
HTML
<p>给你两个 <strong>正</strong> 整数 <code>n</code> 和 <code>x</code> 。</p>
|
||
|
||
<p>请你返回将<em> </em><code>n</code> 表示成一些 <strong>互不相同</strong> 正整数的<em> </em><code>x</code> 次幂之和的方案数。换句话说,你需要返回互不相同整数 <code>[n<sub>1</sub>, n<sub>2</sub>, ..., n<sub>k</sub>]</code> 的集合数目,满足 <code>n = n<sub>1</sub><sup>x</sup> + n<sub>2</sub><sup>x</sup> + ... + n<sub>k</sub><sup>x</sup></code> 。</p>
|
||
|
||
<p>由于答案可能非常大,请你将它对 <code>10<sup>9</sup> + 7</code> 取余后返回。</p>
|
||
|
||
<p>比方说,<code>n = 160</code> 且 <code>x = 3</code> ,一个表示 <code>n</code> 的方法是 <code>n = 2<sup>3</sup> + 3<sup>3</sup> + 5<sup>3</sup></code><sup> </sup>。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre><b>输入:</b>n = 10, x = 2
|
||
<b>输出:</b>1
|
||
<b>解释:</b>我们可以将 n 表示为:n = 3<sup>2</sup> + 1<sup>2</sup> = 10 。
|
||
这是唯一将 10 表达成不同整数 2 次方之和的方案。
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre><b>输入:</b>n = 4, x = 1
|
||
<b>输出:</b>2
|
||
<b>解释:</b>我们可以将 n 按以下方案表示:
|
||
- n = 4<sup>1</sup> = 4 。
|
||
- n = 3<sup>1</sup> + 1<sup>1</sup> = 4 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= n <= 300</code></li>
|
||
<li><code>1 <= x <= 5</code></li>
|
||
</ul>
|