一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。-笔试面试资料

这是qklbishe.com第15260 篇笔试面试资料
提供答案分析,通过本文《一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:
一个一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。的只由小写英文字母组成的矩阵 一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。种不同的字母。

Python 3

一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。 落荒草

class Solution:     def check(self, n, m, s, k, pre):         # s表示边长         # pre[i][j][t]表示以array[i][j]为右下角元素,array[0][0]为左上角元素正方形内 字母t出现的次数         for i in range(1, n+1):             for j in range(1, m+1):                 if i + s -1 > n&nbs***bsp;j + s - 1 > m:                     continue                 count = 0                 for t in range(26):                       if pre[i+s-1][j+s-1][t]-pre[i+s-1][j-1][t]-pre[i-1][j+s-1][t]+pre[i-1][j-1][t]>=1:                         count += 1                     if count >= k:                         return True         return False          def  minSideLength(self, array, n, m, k):         import math         pre = [[[0]*26 for _ in range(m+1)] for _ in range(n+1)]         for i in range(1, n+1):             for j in range(1, m+1):                 for t in range(26):                     pre[i][j][t] = pre[i-1][j][t] + pre[i][j-1][t] - pre[i-1][j-1][t]                 t = ord(array[i-1][j-1]) - ord("a")                 pre[i][j][t] += 1         minS, maxS = int(math.sqrt(k)), min(n, m)         res = -1         while minS <= maxS:             midS = (minS + maxS)>>1             if self.check(n, m, midS, k, pre):                 maxS = midS -1                 res = midS             else:                 minS = midS + 1         return res      if __name__ == "__main__":     [n, m, k] = list(map(int, input().strip().split()))     array = []     for i in range(n):         string = input()         array.append(string)     s = Solution()     res = s.minSideLength(array, n, m, k)     print(res)

请问Python 3这样写有问题吗?老是显示超时 是语言的问题吗

今天 17:05:12 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 一个 的只由小写英文字母组成的矩阵  ,牛牛想找到一个面积最小的正方形子矩阵满足该正方形子矩阵包含至少 种不同的字母。-笔试面试资料

提供最优质的资源集合

立即查看 了解详情