AtCoder ABC 174 B – Distance Python解説
Distance
2 次元平面上に N 個の点があります。 i 個目の点の座標は (Xi,Yi) です。
これらのうち、原点からの距離が D 以下であるような点は何個ありますか?
なお、座標 (p,q) にある点と原点の距離は sqrt(p^2+q^2) で表されます。
原点からの距離がD以下である座標の個数を求める問題です。
座標をfor文で受け取り、距離がD以下かをひとつずつ確認して、D以下の個数をカウントしていきます。
n, d = map(int, input().split())
cnt = 0
for i in range(n):
x, y = map(int, input().split())
if ((x * x + y * y) ** 0.5) <= d:
cnt += 1
print(cnt)
先述した通り実装していきます。座標とDとの距離は((x * x + y * y) ** 0.5) <= dで比較しています。
Pythonの場合ルートは(** 0.5)で得ることができます。距離がD以下だったらcnt+1をして出力すれば大丈夫です。