AtCoder ABC 188 B – Orthogonality Python解説

2022年1月1日

スポンサーリンク

Orthogonality

2 つの N 次元ベクトル A=(A1​,A2​,A3​,…,AN​),B=(B1​,B2​,B3​,…,BN​) が与えられます。
A と B の内積が 0 かどうかを判定してください。
すなわち、A1​B1​+A2​B2​+A3​B3​+⋯+ANBN​=0 かどうかを判定してください。

AtCoder Beginner Contet 「Orthogonality」

ベクトルA,Bが与えられるので、A,Bの先頭から順番に掛け合わせたものを足していきます。
最後に内積が0かどうかを判定します。因みに、内積0とはベクトルA,Bが垂直状態にあることを示しているとの事です。

n = int(input())
a = list(map(int, input().split()))
b = list(map(int, input().split()))

result = 0

for i in range(n):
    result += a[i] * b[i]
    
print("Yes" if result == 0 else "No")

ベクトルA,Bを受け取ったらfor文を使い、順番にA1​B1​+A2​B2​+⋯+AN​BNと掛け合わせていきます。
最後に、内積が0ならYes、そうでなければNoを出力して完了です。

AtCoderB問題

Posted by cheese