ใ๋ชฉ์ฐจใ
0. ๊ฐ์
1. ๋ฌธ์
2. ํ์ด
3. ์ฝ๋
0. ๊ฐ์
์ํ, ๊ตฌํ, ์ ํ๋์ํ ๋ฌธ์ . ํ๋ ฌ๊ณฑ์ ์๋ฆฌ์ ๋ํด ์๊ณ ์์ด์ผ๋ง ํ ์ ์๋ ๋ฌธ์ ์ด๋ค.
1. ๋ฌธ์
https://www.acmicpc.net/problem/2740
[๋ฌธ์ ]
N*Mํฌ๊ธฐ์ ํ๋ ฌ A์ M*Kํฌ๊ธฐ์ ํ๋ ฌ B๊ฐ ์ฃผ์ด์ก์ ๋, ๋ ํ๋ ฌ์ ๊ณฑํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
[์ ๋ ฅ]
์ฒซ์งธ ์ค์ ํ๋ ฌ A์ ํฌ๊ธฐ N ๊ณผ M์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ํ๋ ฌ A์ ์์ M๊ฐ๊ฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. ๊ทธ ๋ค์ ์ค์๋ ํ๋ ฌ B์ ํฌ๊ธฐ M๊ณผ K๊ฐ ์ฃผ์ด์ง๋ค. ์ด์ด์ M๊ฐ์ ์ค์ ํ๋ ฌ B์ ์์ K๊ฐ๊ฐ ์ฐจ๋ก๋๋ก ์ฃผ์ด์ง๋ค. N๊ณผ M, ๊ทธ๋ฆฌ๊ณ K๋ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๊ณ , ํ๋ ฌ์ ์์๋ ์ ๋๊ฐ์ด 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์์ด๋ค.
[์ถ๋ ฅ]
์ฒซ์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ํ๋ ฌ A์ B๋ฅผ ๊ณฑํ ํ๋ ฌ์ ์ถ๋ ฅํ๋ค. ํ๋ ฌ์ ๊ฐ ์์๋ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํ๋ค.
[์์ ์ ๋ ฅ 1]
3 2
1 2
3 4
5 6
2 3
-1 -2 0
0 0 3
[์์ ์ถ๋ ฅ 1]
-1 -2 6
-3 -6 12
-5 -10 18
2. ํ์ด
ํ๋ ฌ๊ณฑ์ ์๋ฆฌ๋ ์์ ๊ฐ๋ค. 3์ค for๋ฌธ์ ํตํด NxM ํ๋ ฌ๊ณผ MxK ํ๋ ฌ์ ์ฐ์ฐ์ ์งํํ ์ ์๋ค.
3. ์ฝ๋
#include <iostream>
using namespace std;
int mat1[100][100] = {};
int mat2[100][100] = {};
int main(int argc, char* argv[]) {
/* Faster */
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
/* Init */
int n, m, k;
/* Mat1 */
cin >> n >> m;
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
cin >> mat1[i][j];
/* Mat2 */
cin >> m >> k;
for (int i = 0; i < m; i++)
for (int j = 0; j < k; j++)
cin >> mat2[i][j];
/* Output */
for (int _n = 0; _n < n; _n++) {
for (int _k = 0; _k < k; _k++) {
int mul = 0;
for (int _m = 0; _m < m; _m++)
mul += mat1[_n][_m] * mat2[_m][_k];
cout << mul << ' ';
}
cout << '\n';
}
/* Return */
return 0;
}
'ใโจ๏ธแดsใPS > ๋ฐฑ์ค_์ํ&๊ตฌํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon/๋ฐฑ์ค][1929][C/C++] ์์ ๊ตฌํ๊ธฐ (0) | 2023.05.03 |
---|---|
[Baekjoon/๋ฐฑ์ค][25314][C/C++] ์ฝ๋ฉ์ ์ฒด์ก๊ณผ๋ชฉ์ ๋๋ค (0) | 2023.05.02 |
[Baekjoon/๋ฐฑ์ค][11382][C/C++] ๊ผฌ๋ง ์ ๋ฏผ (0) | 2023.05.02 |
[Baekjoon/๋ฐฑ์ค][4344][C/C++] ํ๊ท ์ ๋๊ฒ ์ง (0) | 2023.02.07 |
[Baekjoon/๋ฐฑ์ค][3052][C/C++] ๋๋จธ์ง (0) | 2023.01.31 |