結果

問題 No.331 CodeRunnerでやれ
ユーザー matsu7874
提出日時 2015-12-25 01:08:58
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 1,936 bytes
コンパイル時間 146 ms
コンパイル使用メモリ 13,056 KB
実行使用メモリ 94,396 KB
平均クエリ数 2.47
最終ジャッジ日時 2024-07-16 22:46:24
合計ジャッジ時間 7,998 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 2 TLE * 1 -- * 13
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import sys
import collections
def navi(y,x,dy,dx,path):
move = []
ty = -1
tx = -1
while path:
ty,tx = path.pop()
if y+dy == ty and x+dx==tx:
move += ['F']
elif y-dy == ty and x-dx==tx:
move += ['B']
elif y-dx == ty and x+dy==tx:
move += ['L','F']
elif y+dx == ty and x-dy==tx:
move += ['R','F']
return move
def accessible(sy,sx,ty,tx,maze):
visited = [[False for j in range(40)] for i in range(40)]
path = [[[] for j in range(40)] for i in range(40)]
visited[sy][sx] = True
dq = collections.deque()
dq.append((sy,sx))
D = [(1,0),(-1,0),(0,1),(0,-1)]
while dq:
y,x = dq.popleft()
if y==ty and x ==tx:
return path[ty][tx]
for dy,dx in D:
if 0<=y+dy<40 and 0<=x+dx<40 and not visited[y+dy][x+dx]:
dq.append((y+dy,x+dx))
visited[y+dy][x+dx] = True
path[y+dy][x+dx] = path[y][x][:]+[(y,x)]
return []
maze = [[0 for j in range(40)] for i in range(40)]
maze[19][19] = 1
posx = 19
posy = 19
dx = 0
dy = -1
tx = 19
ty = 19
path = []
move = []
while True:
s = input()
if s == 'Merry Christmas!':
exit()
s = int(s)
if s == 20151224:
print('F')
sys.stdout.flush()
elif s == 0:
maze[posy+dy][posx+dx] = -1
print('L')
sys.stdout.flush()
else:
for i in range(1,s+1):
maze[posy+dy*i][posx+dx*i] = 1
if move:
print(move.pop())
sys.stdout.flush()
else:
i = 0
j = 0
while not path:
path = accessible(posy,posx,i,j,maze)
j += 1
if j == 40:
j = 0
i += 1
move = navi(posy,posx,dy,dx,path)
print(move.pop())
sys.stdout.flush()
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0