解説
この問題を読み解くと、行列 C を行列 A と行列 B の積によって求める問題であるとわかります。
例えば、店舗 1 におけるお菓子 1 の合計売り上げ個数 C1,1 は、行列の積の公式を用いると、
C1,1=i=1∑MA1,iBi,1
によって求まります。
for 文を使用して C のすべての要素について公式を用いて求め、出力形式に従って出力すればよいです。
以下のように 3 重 for 文を使用することで Cj,k(1≤j≤N,1≤k≤K) を求めることできます。
- 1 つ目の for 文で、 C の行について j を 1 から N までループさせます。
- 2 つ目の for 文で、 C の列について k を 1 から K までループさせます。
- 3 つ目の for 文で、Cj,k について行列の積の公式を計算します。
初めの 2 つの for 文で、 C のすべての要素 Cj,k について処理を行うことができます。
3 つ目の for 文で、行列の積の公式の ∑ を計算し、 Cj,k を求めることができます。
N,M,K は最大で 100 なので、 3 重 for 文でも十分高速です。
解答例
解答例(C)
解答例(C++)
解答例(Python)