1) ๋ฌธ์ ์ค๋ช
- 2์ฐจ์ ํ๋ ฌ arr1๊ณผ arr2๋ฅผ ์ ๋ ฅ๋ฐ์, arr1์ arr2๋ฅผ ๊ณฑํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์.
2) ์ ํ ์ฌํญ
- ํ๋ ฌ arr1, arr2์ ํ๊ณผ ์ด์ ๊ธธ์ด๋ 2 ์ด์ 100 ์ดํ์ ๋๋ค.
- ํ๋ ฌ arr1, arr2์ ์์๋ -10 ์ด์ 20 ์ดํ์ธ ์์ฐ์์ ๋๋ค.
- ๊ณฑํ ์ ์๋ ๋ฐฐ์ด๋ง ์ฃผ์ด์ง๋๋ค. (์ค์!)
3) ์ ์ถ๋ ฅ ์์
arr1 arr2 return
[[1, 4], [3, 2], [4, 1]] [[3, 3], [3, 3]] [[15, 15], [15, 15], [15, 15]]
[[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]]
4) ์ ์ถ๋ ฅ ์์ ์ค๋ช
- ์์
5) ํ์ด
def solution(arr1, arr2):
# answer List ์ ์ธ
answer = []
# ํ๋ ฌ ๊ณฑ์
์ ์๋ฆฌ
# ์ฒซ ๋ฒ์งธ ๋ฐฐ์ด์ col ์ == ๋ ๋ฒ์จฐ ๋ฐฐ์ด์ row ์
# ์
์ถ๋ ฅ ์์ 1๋ฒ
# 3 x "2" ๋ฐฐ์ด * "2" x 2 ๋ฐฐ์ด => "2" x "2" ๋ฐฐ์ด
# arr1 - ์ฒซ ๋ฒ์งธ ๋ฐฐ์ด์ row ์๋งํผ ๋ฐ๋ณต
for arr in arr1:
L = []
# arr2 - ๋ ๋ฒ์งธ ๋ฐฐ์ด์ col ์๋งํผ ๋ฐ๋ณต
for dx in range(len(arr2[0])):
sum = 0
# sum ํจ์์ ๊ณฑ์
์ฐ์ฐ ์คํํ ๊ฒ์ add
for dy, num in enumerate(arr):
sum += num * arr2[dy][dx]
# L (List)์ ์ถ๊ฐ
L.append(sum)
# answer (List)์ L(List) ์ถ๊ฐ
answer.append(L)
return answer
[Reference]
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
๋ฐ์ํ
'๐ฏ Coding Test > ์๊ณ ๋ฆฌ์ฆ ํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค (Lv 1) - ๋ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ (1) | 2023.08.22 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค (Lv 2) - ์ฐ์ ๋ถ๋ถ ์์ด ํฉ์ ๊ฐ์ (1) | 2023.08.22 |
ํ๋ก๊ทธ๋๋จธ์ค (Lv 2) - ๊ฒ์ ๋งต ์ต๋จ๊ฑฐ๋ฆฌ (1) | 2023.08.21 |
ํ๋ก๊ทธ๋๋จธ์ค (Lv 2) - ๊ตฌ๋ช ๋ณดํธ (1) | 2023.08.17 |
ํ๋ก๊ทธ๋๋จธ์ค (Lv 2) - ์์ด ๋๋ง์๊ธฐ (1) | 2023.08.17 |