1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-27 02:30:28 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/猜猜这个单词 [guess-the-word].html

57 lines
3.4 KiB
HTML
Raw Normal View History

2023-12-09 18:42:21 +08:00
<p>给你一个由 <strong>不同</strong> 字符串组成的单词列表&nbsp;<code>words</code> ,其中 <code>words[i]</code>&nbsp;长度均为&nbsp;<code>6</code><code>words</code> 中的一个单词将被选作秘密单词 <code>secret</code>&nbsp;</p>
2022-03-27 20:46:41 +08:00
2023-12-09 18:42:21 +08:00
<p>另给你一个辅助对象&nbsp;<code>Master</code> ,你可以调用&nbsp;<code>Master.guess(word)</code> 来猜单词,其中参数 <code>word</code> 长度为 6 且必须是 <code>words</code> 中的字符串。</p>
2022-03-27 20:46:41 +08:00
2023-12-09 18:42:21 +08:00
<p><code>Master.guess(word)</code> 将会返回如下结果:</p>
2022-03-27 20:46:41 +08:00
2023-12-09 18:42:21 +08:00
<ul>
<li>如果 <code>word</code> 不是 <code>words</code> 中的字符串,返回 <code>-1</code> ,或者</li>
<li>一个整数,表示你所猜测的单词 <code>word</code><strong>秘密单词</strong>&nbsp;<code>secret</code>&nbsp;的准确匹配(值和位置同时匹配)的数目。</li>
</ul>
2022-03-27 20:46:41 +08:00
2023-12-09 18:42:21 +08:00
<p>每组测试用例都会包含一个参数 <code>allowedGuesses</code> ,其中 <code>allowedGuesses</code> 是你可以调用 <code>Master.guess(word)</code> 的最大次数。</p>
2022-03-27 20:46:41 +08:00
2023-12-09 18:42:21 +08:00
<p>对于每组测试用例,在不超过允许猜测的次数的前提下,你应该调用 <code>Master.guess</code> 来猜出秘密单词。最终,你将会得到以下结果:</p>
<ul>
<li>如果你调用 <code>Master.guess</code> 的次数大于 <code>allowedGuesses</code> 所限定的次数或者你没有用 <code>Master.guess</code> 猜到秘密单词,则得到 <strong><code>"Either you took too many guesses, or you did not find the secret word."</code></strong></li>
<li>如果你调用 <code>Master.guess</code> 猜到秘密单词,且调用 <code>Master.guess</code> 的次数小于或等于 <code>allowedGuesses</code> ,则得到 <strong><code>"You guessed the secret word correctly."</code></strong></li>
</ul>
2022-03-27 20:46:41 +08:00
2023-12-09 18:42:21 +08:00
<p>生成的测试用例保证你可以利用某种合理的策略(而不是暴力)猜到秘密单词。</p>
&nbsp;
<p><strong>示例 1</strong></p>
2022-03-27 20:46:41 +08:00
<pre>
2023-12-09 18:42:21 +08:00
<strong>输入:</strong>secret = "acckzz", words = ["acckzz","ccbazz","eiowzz","abcczz"], allowedGuesses = 10
<strong>输出:</strong>You guessed the secret word correctly.
<strong>解释:</strong>
master.guess("aaaaaa") 返回 -1 ,因为 "aaaaaa" 不在 words 中。
master.guess("acckzz") 返回 6 ,因为 "acckzz" 是秘密单词 secret ,共有 6 个字母匹配。
master.guess("ccbazz") 返回 3 ,因为 "ccbazz" 共有 3 个字母匹配。
master.guess("eiowzz") 返回 2 ,因为 "eiowzz" 共有 2 个字母匹配。
master.guess("abcczz") 返回 4 ,因为 "abcczz" 共有 4 个字母匹配。
一共调用 5 次 master.guess ,其中一个为秘密单词,所以通过测试用例。
2022-03-27 20:46:41 +08:00
</pre>
2023-12-09 18:42:21 +08:00
<p><strong>示例 2</strong></p>
2022-03-27 20:46:41 +08:00
<pre>
2023-12-09 18:42:21 +08:00
<strong>输入:</strong>secret = "hamada", words = ["hamada","khaled"], allowedGuesses = 10
<strong>输出:</strong>You guessed the secret word correctly.
<strong>解释:</strong>共有 2 个单词,且其中一个为秘密单词,可以通过测试用例。</pre>
2022-03-27 20:46:41 +08:00
<p>&nbsp;</p>
2023-12-09 18:42:21 +08:00
<p><strong>提示:</strong></p>
2022-03-27 20:46:41 +08:00
<ul>
2023-12-09 18:42:21 +08:00
<li><code>1 &lt;= words.length &lt;= 100</code></li>
<li><code>words[i].length == 6</code></li>
<li><code>words[i]</code> 仅由小写英文字母组成</li>
<li><code>words</code> 中所有字符串 <strong>互不相同</strong></li>
<li><code>secret</code> 存在于 <code>words</code></li>
<li><code>10 &lt;= allowedGuesses &lt;= 30</code></li>
2022-03-27 20:46:41 +08:00
</ul>