#include <iostream>
#include <vector>
#include <string>
using namespace std;
int l;
vector<vector<char> > a;
string s;
void check(){
vector<vector<int> > d={{0,1},{1,0},{0,-1},{1,1},{-1,-1},{-1,1},{1,-1}};
for(int i=0;i<l;i++){
for(int j=0;j<l;j++){
for(int k=0;k<7;k++){
int x=i,y=j,idx=0;
while(idx<s.size()&&x>-1&&x<l&&y>-1&&y<l&&s[idx]==a[x][y]){
idx++;
x+=d[k][0],y+=d[k][1];
}
if(idx==s.size()){
cout<<i+1<<','<<j+1<<' '<<x-d[k][0]+1<<','<<y-d[k][1]+1<<endl;
return;
}
}
}
}
cout<<"Not found"<<endl;
return;
}
int main(){
cin>>l;
a.assign(l,vector<char>(l));
for(int i=0;i<l;i++){
ws(cin);
for(int j=0;j<l;j++)
cin>>a[i][j];
}
while(cin>>s&&s!="0"){
check();
}
}
#include <vector>
#include <string>
using namespace std;
int l;
vector<vector<char> > a;
string s;
void check(){
vector<vector<int> > d={{0,1},{1,0},{0,-1},{1,1},{-1,-1},{-1,1},{1,-1}};
for(int i=0;i<l;i++){
for(int j=0;j<l;j++){
for(int k=0;k<7;k++){
int x=i,y=j,idx=0;
while(idx<s.size()&&x>-1&&x<l&&y>-1&&y<l&&s[idx]==a[x][y]){
idx++;
x+=d[k][0],y+=d[k][1];
}
if(idx==s.size()){
cout<<i+1<<','<<j+1<<' '<<x-d[k][0]+1<<','<<y-d[k][1]+1<<endl;
return;
}
}
}
}
cout<<"Not found"<<endl;
return;
}
int main(){
cin>>l;
a.assign(l,vector<char>(l));
for(int i=0;i<l;i++){
ws(cin);
for(int j=0;j<l;j++)
cin>>a[i][j];
}
while(cin>>s&&s!="0"){
check();
}
}
Comments
Post a Comment