ベクトルモジュール

あなたはゲーム開発チームの一員で、ベクトルの演算を行うモジュールを作成する任務を与えられています。これらの演算は、オブジェクトの軌道を計算したり、ゲーム内の2つのエンティティ間の距離を求めたりするなど、ゲームメカニクスで頻繁に使用されます。
ベクトルは数値のリストで表され、各数値はベクトルが各軸に沿って持つ成分を示します(例えば、3次元ベクトルなら [x, y, z] となります)。
あなたのタスクは、以下の機能を提供する Python モジュール vector.py を作成することです:
  • add(): 2つのベクトルを加算し、各成分が入力ベクトルの同じ位置にある成分の和となる新しいベクトルを生成します。
  • subtract(): 2つのベクトルを減算し、各成分が入力ベクトルの同じ位置にある成分の差となる新しいベクトルを生成します。
  • dot_product(): 2つのベクトルの対応する成分を掛け合わせ、その積をすべて足し合わせてドット積(内積)を計算します。
  • magnitude(): ベクトルの全ての成分の二乗の和の平方根を計算し、そのベクトルの大きさ(ノルム)を求めます。
入力と出力は main.py モジュールで処理されますので、あなたは vector.py モジュールの実装だけを行ってください。
入力
出力
print(add([1, 2, 3, 2], [4, 5, 6, -1]))
[5, 7, 9, 1]
print(subtract([5, 7, 9], [4, 5, 6]))
[1, 2, 3]
print(dot_product([1, 2, 3], [4, 5, 6]))
32
print(magnitude([1, 2, 3]))
3.7416573867739413
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue