给定一个单词序列,检查它是否构成一个有效单词广场。
一个有效的单词广场应满足以下条件:对于满足0≤k<max(numRows numColumns)k,第k行和第k列对应的字符串应该相同,。

给定的单词数量至少为1,且不超过500
单词长度至少为1,不超过500
每个单词只包含小写英文字母a-z

您在真实的面试中是否遇到过这个题?  是
题目纠错

样例

样例1

输入:
[
"abcd",
"bnrt",
"crmy",
"dtye"
]
输出: true
解释:
第一行和第一列都是“abcd”。
第二行和第二列都是“bnrt”。
第三行和第三列都是“crmy”。
第四行和第四列都是“dtye”。 因此,这是一个有效的单词广场.

样例2

输入:
[
"abcd",
"bnrt",
"crm",
"dt"
]
输出: true
解释:
第一行和第一列都是“abcd”。
第二行和第二列都是“bnrt”。
第三行和第三列都是“crm”。
第四行和第四列都是“dt”。 因此,这是一个有效的单词广场.

样例3

输入:
[
"ball",
"area",
"read",
"lady"
]
输出: false
解释:
第三行是 "read" 但是第三列是 "lead". 因此,这不是一个有效的单词广场.
我的代码:
class Solution:
"""
@param words: a list of string
@return: a boolean
"""
def validWordSquare(self, words):
# Write your code here
r,c = len(words), len(words[0])
if r != c:
return False
for i in range(r):
for j in range(i+1, r):
if words[i][j] != words[j][i]:
return False
return True

  参考代码:

class Solution:
"""
@param words: a list of string
@return: return a boolean
"""
def validWordSquare(self, words):
# write your code here
n, m = len(words), len(words[0])
if(n != m):
return False
for i in range(n):
for j in range(m):
if(j >= n or i >= m or not(words[i][j] == words[j][i])):
return False
return True

  

最新文章

  1. 如何将EXCEL表导入ORACLE数据库中?【转】
  2. Javascript常用方法函数收集(一)
  3. nodeJs 模块cookie-session api文档中文翻译,偶自己翻译的
  4. Web应用数据库配置参数读取方法之一
  5. Adobe Flash player 10 提示:Error#2044:未处理的IOErrorEvent. text=Error#2036:加载未完成 的解决方法
  6. 关于MyBatis mapper的insert, update, delete返回值
  7. 熟悉css/css3颜色属性
  8. 重写ViewPager方法,防止滑动广告尾页的时候,Fragment也改变! (如果广告设置为轮播的话,不需要重写ViewPager)
  9. Xcode 8 新特性
  10. PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [2] 首页 APP 接口开发方案 ① 读取数据库方式
  11. Unable to get valid context for root
  12. [Java] Servlet 3 &mdash;&mdash; 用Java生成GET/POST请求
  13. OpenCV学习(一)
  14. API通用设计原则
  15. [ios2] 获取mac地址 等唯一标识
  16. linshi_temp_erweima_html_backup
  17. [1] Entity Framework / Code First
  18. Java Swing项目专栏之项目业务流程与业务逻辑
  19. 「mysql优化专题」主从复制面试宝典!面试官都没你懂得多!(11)
  20. BZOJ 3105: [cqoi2013]新Nim游戏 [高斯消元XOR 线性基]

热门文章

  1. android手机 ping 虚拟机ubuntu的ip地址
  2. centOs 安装NPM 记录
  3. TCP接入层的负载均衡、高可用、扩展性架构
  4. 在CentOS上安装tomcat
  5. jQuery的过滤器总结
  6. adf 日志输出
  7. ubuntu 基础环境
  8. Django路由控制总览
  9. Javascript 知识遗漏点梳理。
  10. POJ 2778 DNA Sequence (AC自动机+DP+矩阵)