import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
public class Solution
{
static int r,c,m,n;
static String arr[];
static String pattern[];
static void input(Scanner sc)
{
r=sc.nextInt();
c=sc.nextInt();
arr=new String[r];
String s=sc.nextLine();
for(int i=0;i<r;i++)
{
arr[i]=sc.nextLine();
}
m=sc.nextInt();
n=sc.nextInt();
pattern=new String[m];
s=sc.nextLine();
for(int i=0;i<m;i++)
{
pattern[i]=sc.nextLine();
}
int value=(int)pattern[0].charAt(0);
boolean found=false;
outer:
for(int i=0;i<=r-m;i++)
{
for(int j=0;j<=c-n;j++)
{
if((int)(arr[i].charAt(j))==value)
{
found=check(i,j);
if(found==true){
System.out.println("YES");
break outer;
}
}
}
}
if(found==false)
System.out.println("NO");
}
static boolean check(int m,int k)
{
for(int i=0,t=m;i<pattern.length && t<=m+pattern.length;i++,t++)
{
for(int j=0,l=k;j<pattern[i].length() && l<=k+pattern[i].length();j++,l++)
{
if(arr[t].charAt(l)==pattern[i].charAt(j))
continue;
else
return false;
}
}
return true;
}
public static void main(String args[])
{
Scanner sc=new Scanner(System.in);
int test=sc.nextInt();
for(int i=0;i<test;i++)
{
Solution g1=new Solution();
g1.input(sc);
}
}
}
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
public class Solution
{
static int r,c,m,n;
static String arr[];
static String pattern[];
static void input(Scanner sc)
{
r=sc.nextInt();
c=sc.nextInt();
arr=new String[r];
String s=sc.nextLine();
for(int i=0;i<r;i++)
{
arr[i]=sc.nextLine();
}
m=sc.nextInt();
n=sc.nextInt();
pattern=new String[m];
s=sc.nextLine();
for(int i=0;i<m;i++)
{
pattern[i]=sc.nextLine();
}
int value=(int)pattern[0].charAt(0);
boolean found=false;
outer:
for(int i=0;i<=r-m;i++)
{
for(int j=0;j<=c-n;j++)
{
if((int)(arr[i].charAt(j))==value)
{
found=check(i,j);
if(found==true){
System.out.println("YES");
break outer;
}
}
}
}
if(found==false)
System.out.println("NO");
}
static boolean check(int m,int k)
{
for(int i=0,t=m;i<pattern.length && t<=m+pattern.length;i++,t++)
{
for(int j=0,l=k;j<pattern[i].length() && l<=k+pattern[i].length();j++,l++)
{
if(arr[t].charAt(l)==pattern[i].charAt(j))
continue;
else
return false;
}
}
return true;
}
public static void main(String args[])
{
Scanner sc=new Scanner(System.in);
int test=sc.nextInt();
for(int i=0;i<test;i++)
{
Solution g1=new Solution();
g1.input(sc);
}
}
}
No comments:
Post a Comment