結果
| 問題 |
No.331 CodeRunnerでやれ
|
| コンテスト | |
| ユーザー |
maspy
|
| 提出日時 | 2020-03-21 11:36:34 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 459 ms / 5,000 ms |
| コード長 | 2,238 bytes |
| コンパイル時間 | 139 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 27,744 KB |
| 平均クエリ数 | 729.41 |
| 最終ジャッジ日時 | 2024-07-17 02:37:42 |
| 合計ジャッジ時間 | 7,720 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 16 |
ソースコード
import sys
readline = sys.stdin.readline
# DEBUG = True
DEBUG = False
class Interactive:
def __init__(self):
self.ques_cnt = 0
self.create_data()
def create_data(self):
self.grid = '#####..##..##...####'
self.H = 5
self.W = 4
self.xy = 6
self.goal = 15
self.d = 2
def count_front_cells(self):
INF = 20151224
if self.xy == self.goal:
return 'Merry Christmas!'
dx = (self.W, 1, -self.W, -1)[self.d]
xy = self.xy
cnt = 0
while True:
xy += dx
if xy == self.goal:
return INF
if self.grid[xy] == '#':
return cnt
cnt += 1
def resp_ques(self, *args):
ch = args[0]
if ch == 'F':
dx = (self.W, 1, -self.W, -1)[self.d]
n = self.count_front_cells()
if n:
self.xy += dx
return str(self.count_front_cells()) + '\n'
else:
return str(0) + '\n'
if ch == 'L':
self.d += 1
self.d %= 4
return str(self.count_front_cells()) + '\n'
def resp_ans(self, *args):
pass
if DEBUG:
interactive = Interactive()
def question(*args, offset=None):
if offset is None:
print(*args, flush=True)
else:
print(offset, *args, flush=True)
if DEBUG:
resp = interactive.resp_ques(*args)
print(resp, end='')
else:
resp = readline()
if resp[0] == 'M':
exit()
return resp
def answer(*args, offset=None):
if offset is None:
print(*args, flush=True)
else:
print(offset, *args, flush=True)
if DEBUG:
interactive.resp_ans(*args)
else:
exit()
readline()
W = 100
dx = (W, 1, -W, -1)
visited = set([0])
def dfs(v, d):
visited.add(v)
for _ in range(4):
n = int(question('L'))
d += 1
d %= 4
if not n:
continue
w = v + dx[d]
if w in visited:
continue
question('F')
dfs(w, d)
question('L')
question('L')
question('F')
question('L')
question('L')
dfs(0, 0)
maspy