Official

A - 内積の計算 / Dot Product Calculation Editorial by admin

DeepSeek V3

概要

7次元ベクトル \(\mathbf{a}\)\(\mathbf{b}\) の各成分が与えられるので、それらの内積を計算する問題です。

考察

内積は、同じ次元の2つのベクトルの対応する成分の積をすべて足し合わせたものです。この問題では7次元ベクトルなので、7つの成分の積を足し合わせればよいことがわかります。特に難しいアルゴリズムは必要なく、単純に各成分の積を計算して合計するだけで解くことができます。

アルゴリズム

  1. 1行目からベクトル \(\mathbf{a}\) の7つの成分を読み込む
  2. 2行目からベクトル \(\mathbf{b}\) の7つの成分を読み込む
  3. 各インデックス \(i\) (\(0 \leq i < 7\)) について、\(a_i \times b_i\) を計算する
  4. すべての積の結果を合計して出力する

計算量

  • 時間計算量: \(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: