🐕

152. ベクトルの内積

2023/03/22に公開

【問題概要】
n次元ベクトル\vec{a},\vec{b}が与えられたとき、その内積を求める問題。

【解説】
n次元ベクトル\vec{a}=(a_1,a_2,\dots,a_n),\vec{b}=(b_1,b_2,\dots,b_n)の内積は、以下のように定義される。

\vec{a}\cdot\vec{b}=a_1b_1+a_2b_2+\dots+a_nb_n

この式から分かるように、ベクトルの内積は、それぞれの成分を掛けたものを足し合わせた値である。

内積は、2つのベクトルがなす角度を求める際にも使われる。2つのベクトル\vec{a},\vec{b}がなす角度を\thetaとすると、以下の式が成り立つ。

\vec{a}\cdot\vec{b}=|\vec{a}||\vec{b}|\cos\theta

ここで、|\vec{a}|,|\vec{b}|はそれぞれ\vec{a},\vec{b}の大きさを表す。また、\cos\theta\thetaの余弦を表す。

Atcoderでこの問題に関連する問題としては、「ABC183 B」がある。

「ABC183 B」: https://atcoder.jp/contests/abc183/tasks/abc183_b
レーティング難易度(★): 200
ACした回答者に絞った場合のレーティング帯の範囲(数値): 136 - 221
レーティング難易度(%): 28.5%
レーティング(数値): 193
AC率(%): 81.8%
ACしたスコアの高い回答者: https://atcoder.jp/users/rsk0315
解説ブログ: https://drken1215.hatenablog.com/entry/2020/10/18/171000

Discussion