結果
| 問題 | No.612 Move on grid |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2017-12-12 23:06:38 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 838 bytes |
| 記録 | |
| コンパイル時間 | 162 ms |
| コンパイル使用メモリ | 85,316 KB |
| 実行使用メモリ | 313,292 KB |
| 最終ジャッジ日時 | 2026-05-25 00:39:10 |
| 合計ジャッジ時間 | 4,517 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge3_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 TLE * 1 |
| other | -- * 18 |
ソースコード
#!/usr/bin/env python
t = int(input().strip())
indat = [int(x) for x in input().split()]
points = {(0, 0, 0):1}
moves = [(1, 0, 0), (0, 1, 0), (0, 0, 1)]
moves = set(moves)
for i in range(t):
tmp = {}
for point, times in points.items():
for move in moves:
a = tuple([x + y for (x, y) in zip(point, move)])
if tmp.get(a) == None:
tmp[a] = times
else:
tmp[a] += times
a = tuple([x - y for (x, y) in zip(point, move)])
if tmp.get(a) == None:
tmp[a] = times
else:
tmp[a] += times
points = tmp
p = 0
for point, times in points.items():
eqs = sum([a * x for (a, x) in zip(indat[:3], point)])
if eqs >= indat[3] and eqs <= indat[4]:
p += times
print(p % (10**9 + 7))