mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-11 02:58:13 +08:00
38 lines
2.0 KiB
HTML
38 lines
2.0 KiB
HTML
|
<p>你想要用<strong>小写字母</strong>组成一个目标字符串 <code>target</code>。 </p>
|
|||
|
|
|||
|
<p>开始的时候,序列由 <code>target.length</code> 个 <code>'?'</code> 记号组成。而你有一个小写字母印章 <code>stamp</code>。</p>
|
|||
|
|
|||
|
<p>在每个回合,你可以将印章放在序列上,并将序列中的每个字母替换为印章上的相应字母。你最多可以进行 <code>10 * target.length</code> 个回合。</p>
|
|||
|
|
|||
|
<p>举个例子,如果初始序列为 "?????",而你的印章 <code>stamp</code> 是 <code>"abc"</code>,那么在第一回合,你可以得到 "abc??"、"?abc?"、"??abc"。(请注意,印章必须完全包含在序列的边界内才能盖下去。)</p>
|
|||
|
|
|||
|
<p>如果可以印出序列,那么返回一个数组,该数组由每个回合中被印下的最左边字母的索引组成。如果不能印出序列,就返回一个空数组。</p>
|
|||
|
|
|||
|
<p>例如,如果序列是 "ababc",印章是 <code>"abc"</code>,那么我们就可以返回与操作 "?????" -> "abc??" -> "ababc" 相对应的答案 <code>[0, 2]</code>;</p>
|
|||
|
|
|||
|
<p>另外,如果可以印出序列,那么需要保证可以在 <code>10 * target.length</code> 个回合内完成。任何超过此数字的答案将不被接受。</p>
|
|||
|
|
|||
|
<p> </p>
|
|||
|
|
|||
|
<p><strong>示例 1:</strong></p>
|
|||
|
|
|||
|
<pre><strong>输入:</strong>stamp = "abc", target = "ababc"
|
|||
|
<strong>输出:</strong>[0,2]
|
|||
|
([1,0,2] 以及其他一些可能的结果也将作为答案被接受)
|
|||
|
</pre>
|
|||
|
|
|||
|
<p><strong>示例 2:</strong></p>
|
|||
|
|
|||
|
<pre><strong>输入:</strong>stamp = "abca", target = "aabcaca"
|
|||
|
<strong>输出:</strong>[3,0,1]
|
|||
|
</pre>
|
|||
|
|
|||
|
<p> </p>
|
|||
|
|
|||
|
<p><strong>提示:</strong></p>
|
|||
|
|
|||
|
<ol>
|
|||
|
<li><code>1 <= stamp.length <= target.length <= 1000</code></li>
|
|||
|
<li><code>stamp</code> 和 <code>target</code> 只包含小写字母。</li>
|
|||
|
</ol>
|