結果
| 問題 | No.321 (P,Q)-サンタと街の子供たち |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2023-08-05 10:54:59 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 97 ms / 2,000 ms |
| コード長 | 1,066 bytes |
| コンパイル時間 | 147 ms |
| コンパイル使用メモリ | 82,436 KB |
| 実行使用メモリ | 76,304 KB |
| 最終ジャッジ日時 | 2024-10-15 08:04:39 |
| 合計ジャッジ時間 | 6,153 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 41 |
ソースコード
import sys
input = lambda :sys.stdin.readline()[:-1]
ni = lambda :int(input())
na = lambda :list(map(int,input().split()))
yes = lambda :print("yes");Yes = lambda :print("Yes");YES = lambda : print("YES")
no = lambda :print("no");No = lambda :print("No");NO = lambda : print("NO")
#######################################################################
def norm(a):
return a[0]*a[0]+a[1]*a[1]
def round(a, b):
return (a*2+b)//(2*b)
def div(a, b):
c = (round(a[0]*b[0] + a[1]*b[1], norm(b)), round(a[1]*b[0]-a[0]*b[1], norm(b)))
return a[0] - b[0]*c[0] + b[1]*c[1], a[1] - b[0]*c[1] - b[1]*c[0]
def gcd(a, b):
if b == (0,0):
return a
return gcd(b, div(a, b))
p, q = na()
if p == 0 and q == 0:
n = ni()
ans = 0
for i in range(n):
x, y = na()
if x == 0 and y == 0:
ans += 1
print(ans)
exit()
r = gcd((p, q), (p, -q))
n = ni()
ans = 0
for _ in range(n):
x, y = na()
if (r[0] * x + r[1] * y) % norm(r) == 0 and (r[0] * y - r[1] * x) % norm(r) == 0:
ans += 1
print(ans)