結果
| 問題 |
No.202 1円玉投げ
|
| コンテスト | |
| ユーザー |
しらっ亭
|
| 提出日時 | 2015-06-26 02:07:01 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 976 ms / 5,000 ms |
| コード長 | 1,135 bytes |
| コンパイル時間 | 474 ms |
| コンパイル使用メモリ | 82,304 KB |
| 実行使用メモリ | 272,128 KB |
| 最終ジャッジ日時 | 2024-12-22 09:40:10 |
| 合計ジャッジ時間 | 21,460 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 38 |
ソースコード
def lap(bin, x, y, dx, dy):
cs = []
cs.extend(bin[dx][dy])
cs.extend(bin[dx][dy + 1])
cs.extend(bin[dx][dy + 2])
cs.extend(bin[dx + 1][dy])
cs.extend(bin[dx + 1][dy + 1])
cs.extend(bin[dx + 1][dy + 2])
cs.extend(bin[dx + 2][dy])
cs.extend(bin[dx + 2][dy + 1])
cs.extend(bin[dx + 2][dy + 2])
for bx, by in cs:
if (bx - x) ** 2 + (by - y) ** 2 < 400:
return True
t = (x, y)
bin[dx][dy].append(t)
bin[dx][dy + 1].append(t)
bin[dx][dy + 2].append(t)
bin[dx + 1][dy].append(t)
bin[dx + 1][dy + 1].append(t)
bin[dx + 1][dy + 2].append(t)
bin[dx + 2][dy].append(t)
bin[dx + 2][dy + 1].append(t)
bin[dx + 2][dy + 2].append(t)
return False
def solve(XY):
bin = [[[] for j in range(2003)] for i in range(2003)]
count = 0
for x, y in XY:
dx = x // 10
dy = y // 10
if not lap(bin, x, y, dx, dy):
count += 1
return count
def main():
N = int(input())
XY = [list(map(int, input().split())) for i in range(N)]
print(solve(XY))
if __name__ == '__main__':
main()
しらっ亭