5
HUEAK
0 0 2 3 0
0 0 0 7 4
2 0 0 0 0
3 7 0 0 1
0 4 0 1 0
H
----------------------------
HEAUK
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
using namespace std;
int maps[105][105],vis[1005]={0},n;
char str,ch[1005];
void dfs(int tar)
{
cout<<ch[tar];
vis[tar]=1;
int i;
for(i=0;i<n;i++)
{
if(maps[tar][i]!=0 && vis[i]==0)
{
vis[i]=1;
dfs(i);
}
}
}
int main()
{
int i,j;
cin>>n;
cin>>ch;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>maps[i][j];
int len=strlen(ch);
cin>>str;
int tar;
for(i=0;i<len;i++)
{
if(ch[i]==str) tar=i;
}
dfs(tar);
return 0;
}