๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿง CodingTest

[Python] CodeTree - Trail 0. Chapter10 : ๋‘ ๋ฐฐ์—ด์˜ ๊ณฑ

by ._.sori 2025. 9. 20.

 

 

 

1. ๋ฌธ์ œ ์„ค๋ช…

3ํ–‰ 3์—ด์˜ ๋ฐฐ์—ด ๋‘ ๊ฐœ๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๋‘ ๋ฐฐ์—ด์˜ ๊ฐ™์€ ์œ„์น˜์— ์žˆ๋Š” ์ˆ˜์˜ ๊ณฑ์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์„ธ์š”.

 

 

 

 

2. ์ž…๋ ฅ ์˜ˆ์‹œ

3ํ–‰ 3์—ด์˜ ๋ฐฐ์—ด ๋‘ ๊ฐœ๊ฐ€ ์ค„ ๊ฐ„๊ฒฉ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

1 2 3
4 5 6
7 8 9

2 3 4
5 6 7
8 9 10

 

 

 

 

3. ์ถœ๋ ฅ ์˜ˆ์‹œ

์ฃผ์–ด์ง„ ๋‘ ๋ฐฐ์—ด์˜ ๊ณฑ์„ 3ํ–‰ 3์—ด์˜ ๋ฐฐ์—ด๋กœ ์ž…์ถœ๋ ฅ ์˜ˆ์ œ์™€ ๊ฐ™์ด ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

2 6 12 
20 30 42
56 72 90

 

 

 

 

4. ๋ฌธ์ œ ํ’€์ด

  • ์ž˜๋ชป๋œ ํ’€์ด
A = [
    list(map(int,input().split()))
    for _ in range (3)
]

B = [
    list(map(int,input().split()))
    for _ in range (3)
]

for i in range(3):
    for j in range(3):
    	print(A[i][j]*B[i][j], end=" ")
    print()
์ฒ˜์Œ์—” ์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ–ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ•˜๋ฉด ๋ฐฐ์—ด B์—๊ฒŒ Index of range๋ผ๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ฒŒ ๋œ๋‹ค. ์ด์ƒํ•˜๋‹ค. A์™€ ๋™์ผํ•˜๊ฒŒ ์ž‘์„ฑํ•ด๋„ A๋Š” ์˜ค๋ฅ˜ ์—†์ด ๋ฐฐ์—ด ์ถœ๋ ฅ์ด ์ž˜๋๋Š”๋ฐ, ์™œ B๋งŒ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๊ฑธ๊นŒ? 

์ž…๋ ฅํ•  ๋•Œ ์ œ๋Œ€๋กœ ์ž…๋ ฅ๋˜์ง€ ์•Š์•˜๋‹ค๊ณ  ์ถ”์ธกํ–ˆ๋‹ค. range(3)์„ range(1)๋กœ ๋ฐ”๊ฟ”๋„ ์ถœ๋ ฅ์ด ์•ˆ๋˜๋Š”๊ฑธ ๋ณด๋‹ˆ ๋ฐฐ์—ด ์ž…๋ ฅ์ด ์•„์˜ˆ ์•ˆ๋œ๊ฒŒ ๋ถ„๋ช…ํ–ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค์‹œ ๋ฌธ์ œ๋ฅผ ์ฝ์–ด๋ดค๋‹ค.

3ํ–‰ 3์—ด์˜ ๋ฐฐ์—ด ๋‘ ๊ฐœ๊ฐ€ ์ค„ ๊ฐ„๊ฒฉ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

๋‹ค์‹œ ์ฝ์–ด๋ณด๋‹ˆ, ์ค„ ๊ฐ„๊ฒฉ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ฃผ์–ด์ง„๋‹ค๋Š” ๋ง์ด ๊ฑธ๋ ธ๋‹ค. ์ค„์„ ์ค€๋‹ค๋Š” ๊ฒŒ ๋„๋Œ€์ฒด ๋ฌด์Šจ ๋ง์ผ์ง€ ํ•œ์ฐธ์„ ๊ณ ๋ฏผํ–ˆ๊ณ , ์˜ˆ์ œ๋กœ ์ค€ ๋ถ€๋ถ„์„ ๋ณด๋‹ˆ ์ค„ ํ•œ ์นธ์„ ๊ณต๋ฐฑ ์ฒ˜๋ฆฌ ํ•œ ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

์‚ฌ์šฉ์ž๊ฐ€ ํ•œ ๋ฒˆ ์—”ํ„ฐ๋ฅผ ์ณ์„œ ๊ณต๋ฐฑ์„ ์ฃผ๊ณ  ๊ทธ ๋‹ค์Œ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ฑ„์šด๊ฑฐ์˜€๋‹ค. ๊ทธ๋ž˜์„œ ๊ณต๋ฐฑ์„ ์ค€ ๋ถ€๋ถ„์ด B๋กœ ๊ฐ€๊ณ  ๊ทธ๋ž˜์„œ ๋ฒ”์œ„๋ฅผ ์ขํ˜€ ์ถœ๋ ฅํ•˜๋ ค๊ณ  ํ•ด๋„ ์•„๋ฌด๊ฒƒ๋„ ์—†์œผ๋‹ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ๋ฐ–์— ์—†์—ˆ๋‹ค.

 

 

  • ์ œ๋Œ€๋กœ ๋œ ํ’€์ด
A = [
    list(map(int,input().split()))
    for _ in range (3)
]

input()

B = [
    list(map(int,input().split()))
    for _ in range (3)
]

for i in range(3):
    for j in range(3):
    	print(A[i][j]*B[i][j], end=" ")
    print()
input( )์„ ๋„ฃ์–ด์ฃผ๋‹ˆ ๊น”๋”ํ•˜๊ฒŒ ํ•ด๊ฒฐ๋๋‹ค. ํ•ด์„ค์—์„  ๋ฐฐ์—ด์˜ ๊ณฑ์„ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์— ๋‹ด์•˜๋˜๋ฐ... ์–ด์ฐจํ”ผ ๋ฐฐ์—ด ๋ชจ์–‘์œผ๋กœ ์ถœ๋ ฅ๋˜๋Š”๊ฒŒ ์•„๋‹Œ ์ˆซ์ž๋กœ๋งŒ ๋ณด์ด๋ฉด ๋˜๋Š”๊ฑฐ๋ผ, ๊ทธ๋ƒฅ ๊ณฑํ•ด์ฃผ๋Š” ๋ฐฉ์‹์œผ๋กœ ํ’€์—ˆ๋‹ค.

 

 

  • ํ•ด์„ค
# ์ฒซ ๋ฒˆ์งธ 2์ฐจ์› ๋ฐฐ์—ด์„ ๊ตฌํ˜„ํ•ด ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค.
arr_1 = [
	list(map(int, input().split()))
	for _ in range(3)
]

input()

# ๋‘ ๋ฒˆ์งธ 2์ฐจ์› ๋ฐฐ์—ด์„ ๊ตฌํ˜„ํ•ด ์ •์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค.
arr_2 = [
	list(map(int, input().split()))
	for _ in range(3)
]

# 2์ฐจ์› ๋ฐฐ์—ด์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
arr_3 = [
    [0 for _ in range(3)]
    for _ in range(3)
]

# ๋‘ ๋ฐฐ์—ด์˜ ๊ณฑ์„ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์— ๋‹ด์Šต๋‹ˆ๋‹ค.
for i in range(3):
	for j in range(3):
		arr_3[i][j] = arr_1[i][j] * arr_2[i][j]
	
# ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
for i in range(3):        
    for j in range(3):    
        print(arr_3[i][j], end=" ")
    print()