Please sign in first.
Official
A - 内積の計算 / Dot Product Calculation Editorial by admin
DeepSeek V3概要
7次元ベクトル \(\mathbf{a}\) と \(\mathbf{b}\) の各成分が与えられるので、それらの内積を計算する問題です。
考察
内積は、同じ次元の2つのベクトルの対応する成分の積をすべて足し合わせたものです。この問題では7次元ベクトルなので、7つの成分の積を足し合わせればよいことがわかります。特に難しいアルゴリズムは必要なく、単純に各成分の積を計算して合計するだけで解くことができます。
アルゴリズム
- 1行目からベクトル \(\mathbf{a}\) の7つの成分を読み込む
- 2行目からベクトル \(\mathbf{b}\) の7つの成分を読み込む
- 各インデックス \(i\) (\(0 \leq i < 7\)) について、\(a_i \times b_i\) を計算する
- すべての積の結果を合計して出力する
計算量
- 時間計算量: \(O(1)\)
- 7回の乗算と6回の加算(定数回の演算)のみで計算できるため
- 空間計算量: \(O(1)\)
- 2つのベクトルを格納するための配列(各7要素)のみを使用するため
実装のポイント
input().split()で入力をスペース区切りで分割し、intに変換してリストに格納しますmap関数とlambda式を使って、2つのリストの対応する要素を乗算しますsum関数ですべての乗算結果の合計を計算しますこの実装では、Pythonの組み込み関数を効果的に活用して簡潔に書いています
ソースコード
a = [int(x) for x in input().split()]
b = [int(x) for x in input().split()]
print(sum(map(lambda x, y: x * y, a, b)))
この解説は deepseekv3 によって生成されました。
posted:
last update: