Submission
Status:
----------
Subtask/Task Score:
0/100
Score: 0
User: tull
Problemset: Croissant Beyond Peaks
Language: python
Time: 0.113 second
Submitted On: 2026-07-30 21:45:03
n=int()
s=['' for i in range(2)]
vst=[[0 for i in range(2)] for i in range(2)]
dir=1
st=0
def DFS(pos:int,lv:int)->None:
global st
if(st==1):
return
if(lv<0 or lv>1):
return
if(pos<0 or pos>=n):
return
if(s[lv][pos]=='#'):
return
if(s[lv][pos]=='T'):
st=1
return
if(vst[lv][pos]==1):
return
vst[lv][pos]=1
DFS(pos+dir,lv)
DFS(pos,lv+1)
DFS(pos,lv-1)
def tc():
global n
global s
global vst
global dir
n=int(input())
s=['' for i in range(2)]
vst=[[0 for i in range(n)] for i in range(2)]
s[0]=str(input())
s[1]=str(input())
pos=0
lv=0
pe=0
for i in range(2):
for j in range(n):
if(s[i][j]=='S'):
pos=j
lv=i
if(s[i][j]=='T'):
pe=j
if(pe<pos):
dir=-1
DFS(pos,lv)
if(st==1):
print('Yes')
else:
print("No")
q=int(input())
while q>0:
st=0
tc()
q-=1
'''
3
5
..#.T
...#S
10
..S.#..#.#
..#....#.T
13
...#...#...#S
T#...#...#...
'''