結果
| 問題 |
No.202 1円玉投げ
|
| ユーザー |
yuyyuyu
|
| 提出日時 | 2015-08-07 23:10:35 |
| 言語 | PyPy2 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 395 ms / 5,000 ms |
| コード長 | 622 bytes |
| コンパイル時間 | 771 ms |
| コンパイル使用メモリ | 75,944 KB |
| 実行使用メモリ | 91,776 KB |
| 最終ジャッジ日時 | 2024-12-22 09:52:32 |
| 合計ジャッジ時間 | 11,268 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 38 |
ソースコード
size=50
def dist(ax,ay,bx,by):
return (ax-bx)**2+(ay-by)**2
def check(x,y):
for dy in xrange(-1,2):
for dx in xrange(-1,2):
bx,by=x/size+dx,y/size+dy
if 0<=bx<20000/size+1 and 0<=by<20000/size+1:
for cx,cy in block[by][bx]:
if dist(x,y,cx,cy)<400:
return False
return True
N=int(raw_input())
block=[[[] for i in xrange(20000/size+1)] for j in xrange(20000/size+1)]
ans=0
for loop in xrange(N):
x,y=map(int,raw_input().split())
if check(x,y):
ans+=1
block[y/size][x/size].append((x,y))
print ans
yuyyuyu