当前位置:网站首页>Simulation volume leetcode [general] 1314 Matrix area and
Simulation volume leetcode [general] 1314 Matrix area and
2022-07-06 06:18:00 【Encounter simulation volume】
1314. Matrix regions and
To give you one m x n Matrix mat And an integer k , Please return a matrix answer , Each of them answer[i][j] Are all elements that meet the following conditions mat[r][c] And :
i - k <= r <= i + k,
j - k <= c <= j + k And
(r, c) In the matrix .
Example 1:
Input :mat = [[1,2,3],[4,5,6],[7,8,9]], k = 1
Output :[[12,21,16],[27,45,33],[24,39,28]]
Example 2:
Input :mat = [[1,2,3],[4,5,6],[7,8,9]], k = 2
Output :[[45,45,45],[45,45,45],[45,45,45]]
Tips :
m == mat.length
n == mat[i].length
1 <= m, n, k <= 100
1 <= mat[i][j] <= 100
source : Power button (LeetCode)
link :https://leetcode-cn.com/problems/matrix-block-sum
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Code :
import numpy as np
from leetcode_python.utils import *
from scipy import signal
class Solution:
def __init__(self):
pass
def matrixBlockSum(self, mat: List[List[int]], k: int) -> List[List[int]]:
data = np.array(mat)
h,w = data.shape
res = [[int(np.sum(data[max(0,i-k):min(h,i+k+1),max(0,j-k):min(w,j+k+1)])) for j in range(w)] for i in range(h)]
return res
def matrixBlockSum_conv(self, mat: List[List[int]], k: int) -> List[List[int]]:
""" But I don't know why the result is wrong , In particular, the convolution kernel exceeds mat When """
data = np.array(mat)
print(data)
nurcle = np.ones((1+k*2,1+k*2)).astype(np.uint32)
# nurcle[k][k]=0
print(nurcle)
res = signal.convolve2d(data, nurcle, boundary='fill', fillvalue=0).astype(np.uint8)
# res = signal.convolve2d(data, nurcle, 'same').astype(np.uint8)
print(res)
return res.tolist()
def test(data_test):
s = Solution()
return s.matrixBlockSum(*data_test)
def test_obj(data_test):
result = [None]
obj = Solution(*data_test[1][0])
for fun, data in zip(data_test[0][1::], data_test[1][1::]):
if data:
res = obj.__getattribute__(fun)(*data)
else:
res = obj.__getattribute__(fun)()
result.append(res)
return result
if __name__ == '__main__':
datas = [
# [[[1,2,3],[4,5,6],[7,8,9]],2],
[[[67,64,78],[99,98,38],[82,46,46],[6,52,55],[55,99,45]],3],
# [[[1,1,1],[1,2,1],[1,1,1],[1,1,1],[1,1,1]],3],
# [[[1,1,1,1,1],[1,2,1,1,1],[1,1,1,1,1],[1,1,1,1,1],[1,1,1,1,1]],5],
]
for data_test in datas:
t0 = time.time()
print('-' * 50)
print('input:', data_test)
print('output:', test(data_test))
print(f'use time:{
time.time() - t0}s')
remarks :
GitHub:https://github.com/monijuan/leetcode_python
CSDN Summary : Simulation volume Leetcode Summary of questions _ Paper blog -CSDN Blog
You can add QQ Group communication :1092754609
leetcode_python.utils See the description on the summary page for details
First brush questions , Then generated by script blog, If there is any mistake, please leave a message , I see it will be revised ! thank you !
边栏推荐
猜你喜欢
Postman核心功能解析-参数化和测试报告
G - Supermarket
Manhattan distance sum - print diamond
isam2运行流程
On weak network test of special test
Digital triangle model acwing 1015 Picking flowers
Significance of unit testing
二维码的前世今生 与 六大测试点梳理
Properties file
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
随机推荐
Thoughts on data security (Reprint)
进程和线程的理解
Isam2 and incrementalfixedlagsmooth instructions in gtsam
D - How Many Answers Are Wrong
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
模拟卷Leetcode【普通】1414. 和为 K 的最少斐波那契数字数目
模拟卷Leetcode【普通】1062. 最长重复子串
B - The Suspects
[ram IP] introduction and experiment of ram IP core
On weak network test of special test
Eigen稀疏矩阵操作
自定义指定路由上的Gateway过滤器工厂
How to extract login cookies when JMeter performs interface testing
Buuctf-[[gwctf 2019] I have a database (xiaoyute detailed explanation)
Seven imperceptible truths in software testing
IP day 16 VLAN MPLS configuration
模拟卷Leetcode【普通】1405. 最长快乐字符串
Online and offline problems
[wechat applet] build a development tool environment
联合索引的左匹配原则