422:有效的单词方块422:有效的单词方块
This commit is contained in:
parent
82165b5641
commit
ce597f4f8e
122
src/main/java/leetcode/editor/cn/ValidWordSquare.java
Normal file
122
src/main/java/leetcode/editor/cn/ValidWordSquare.java
Normal file
@ -0,0 +1,122 @@
|
||||
//给你一个单词序列,判断其是否形成了一个有效的单词方块。
|
||||
//
|
||||
// 有效的单词方块是指此由单词序列组成的文字方块的 第 k 行 和 第 k 列 (0 ≤ k < max(行数, 列数)) 所显示的字符串完全相同。
|
||||
//
|
||||
// 注意:
|
||||
//
|
||||
//
|
||||
// 给定的单词数大于等于 1 且不超过 500。
|
||||
// 单词长度大于等于 1 且不超过 500。
|
||||
// 每个单词只包含小写英文字母 a-z。
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// 示例 1:
|
||||
//
|
||||
// 输入:
|
||||
//[
|
||||
// "abcd",
|
||||
// "bnrt",
|
||||
// "crmy",
|
||||
// "dtye"
|
||||
//]
|
||||
//
|
||||
//输出:
|
||||
//true
|
||||
//
|
||||
//解释:
|
||||
//第 1 行和第 1 列都是 "abcd"。
|
||||
//第 2 行和第 2 列都是 "bnrt"。
|
||||
//第 3 行和第 3 列都是 "crmy"。
|
||||
//第 4 行和第 4 列都是 "dtye"。
|
||||
//
|
||||
//因此,这是一个有效的单词方块。
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// 示例 2:
|
||||
//
|
||||
// 输入:
|
||||
//[
|
||||
// "abcd",
|
||||
// "bnrt",
|
||||
// "crm",
|
||||
// "dt"
|
||||
//]
|
||||
//
|
||||
//输出:
|
||||
//true
|
||||
//
|
||||
//解释:
|
||||
//第 1 行和第 1 列都是 "abcd"。
|
||||
//第 2 行和第 2 列都是 "bnrt"。
|
||||
//第 3 行和第 3 列都是 "crm"。
|
||||
//第 4 行和第 4 列都是 "dt"。
|
||||
//
|
||||
//因此,这是一个有效的单词方块。
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// 示例 3:
|
||||
//
|
||||
// 输入:
|
||||
//[
|
||||
// "ball",
|
||||
// "area",
|
||||
// "read",
|
||||
// "lady"
|
||||
//]
|
||||
//
|
||||
//输出:
|
||||
//false
|
||||
//
|
||||
//解释:
|
||||
//第 3 行是 "read" ,然而第 3 列是 "lead"。
|
||||
//
|
||||
//因此,这 不是 一个有效的单词方块。
|
||||
//
|
||||
//
|
||||
//
|
||||
// Related Topics 数组 矩阵 👍 31 👎 0
|
||||
|
||||
package leetcode.editor.cn;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
//422:有效的单词方块
|
||||
public class ValidWordSquare {
|
||||
public static void main(String[] args) {
|
||||
Solution solution = new ValidWordSquare().new Solution();
|
||||
System.out.println(solution.validWordSquare(Arrays.asList("ball", "area", "read", "lady")));
|
||||
System.out.println(solution.validWordSquare(Arrays.asList("abcd", "bnrt", "crmy", "dtye")));
|
||||
System.out.println(solution.validWordSquare(Arrays.asList("abcd", "bnrt", "crm", "dt")));
|
||||
System.out.println(solution.validWordSquare(Arrays.asList("abc", "b")));
|
||||
}
|
||||
|
||||
//leetcode submit region begin(Prohibit modification and deletion)
|
||||
class Solution {
|
||||
public boolean validWordSquare(List<String> words) {
|
||||
for (int i = 0; i < words.size(); i++) {
|
||||
String word = words.get(i);
|
||||
int j = 0;
|
||||
for (; j < word.length(); j++) {
|
||||
if (j >= word.length() || j >= words.size() || i >= words.get(j).length() || word.charAt(j) != words.get(j).charAt(i)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for (; j < words.size(); j++) {
|
||||
if (j < words.size() && words.get(j).length() > words.size()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
//leetcode submit region end(Prohibit modification and deletion)
|
||||
|
||||
}
|
@ -0,0 +1,83 @@
|
||||
<p>给你一个单词序列,判断其是否形成了一个有效的单词方块。</p>
|
||||
|
||||
<p>有效的单词方块是指此由单词序列组成的文字方块的 第 k 行 和 第 k 列 (0 ≤ <em>k</em> < max(行数, 列数)) 所显示的字符串完全相同。</p>
|
||||
|
||||
<p><strong>注意:</strong></p>
|
||||
|
||||
<ol>
|
||||
<li>给定的单词数大于等于 1 且不超过 500。</li>
|
||||
<li>单词长度大于等于 1 且不超过 500。</li>
|
||||
<li>每个单词只包含小写英文字母 <code>a-z</code>。</li>
|
||||
</ol>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>示例 1:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>
|
||||
[
|
||||
"abcd",
|
||||
"bnrt",
|
||||
"crmy",
|
||||
"dtye"
|
||||
]
|
||||
|
||||
<strong>输出:</strong>
|
||||
true
|
||||
|
||||
<strong>解释:</strong>
|
||||
第 1 行和第 1 列都是 "abcd"。
|
||||
第 2 行和第 2 列都是 "bnrt"。
|
||||
第 3 行和第 3 列都是 "crmy"。
|
||||
第 4 行和第 4 列都是 "dtye"。
|
||||
|
||||
因此,这是一个有效的单词方块。
|
||||
</pre>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>示例 2:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>
|
||||
[
|
||||
"abcd",
|
||||
"bnrt",
|
||||
"crm",
|
||||
"dt"
|
||||
]
|
||||
|
||||
<strong>输出:</strong>
|
||||
true
|
||||
|
||||
<strong>解释:</strong>
|
||||
第 1 行和第 1 列都是 "abcd"。
|
||||
第 2 行和第 2 列都是 "bnrt"。
|
||||
第 3 行和第 3 列都是 "crm"。
|
||||
第 4 行和第 4 列都是 "dt"。
|
||||
|
||||
因此,这是一个有效的单词方块。
|
||||
</pre>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>示例 3:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>
|
||||
[
|
||||
"ball",
|
||||
"area",
|
||||
"read",
|
||||
"lady"
|
||||
]
|
||||
|
||||
<strong>输出:</strong>
|
||||
false
|
||||
|
||||
<strong>解释:</strong>
|
||||
第 3 行是 "read" ,然而第 3 列是 "lead"。
|
||||
|
||||
因此,这 <strong>不是</strong> 一个有效的单词方块。
|
||||
</pre>
|
||||
|
||||
<p> </p>
|
||||
<div><div>Related Topics</div><div><li>数组</li><li>矩阵</li></div></div><br><div><li>👍 31</li><li>👎 0</li></div>
|
Loading…
Reference in New Issue
Block a user