-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathGrid Search.py
38 lines (35 loc) · 956 Bytes
/
Grid Search.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# -*- coding: utf-8 -*-
"""
Created on Tue Mar 17 19:44:31 2020
@author: Ravi
"""
def gridSearch(grid,pattern):
r = len(grid)
c = len(grid[0])
R = len(pattern)
C = len(pattern[0])
for i in range(r-R+1):
for j in range(c-C+1):
flag = True
for ii in range(R):
for jj in range(C):
if flag:
flag = (grid[i+ii][j+jj]==pattern[ii][jj])
else:
break
if not flag:
break
if flag:
return 'YES'
return 'NO'
t = int(input())
for i in range(t):
r,c = map(int , input().split(" "))
grid = []
for i in range(r):
grid.append(input())
pattern = []
R,C = map(int,input().split(" "))
for i in range(R):
pattern.append(input())
print(gridSearch(grid,r,c,pattern,R,C))