Point ๐Ÿ’ก


๊ทธ๋ ‡๋‹ค๋ฉด ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ์˜ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ƒ๊ฐํ•˜์ž! โ†’ 19๊ฐ€์ง€

https://jeongchul.tistory.com/670

https://jeongchul.tistory.com/670

๊ทธ๋ž˜์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํŠœํ”Œ๋กœ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

tetromino = [
    [(0,0), (0,1), (1,0), (1,1)], # ใ…
    [(0,0), (0,1), (0,2), (0,3)], # ใ…ก
    [(0,0), (1,0), (2,0), (3,0)], # ใ…ฃ
    [(0,0), (0,1), (0,2), (1,0)],
    [(1,0), (1,1), (1,2), (0,2)],
    [(0,0), (1,0), (1,1), (1,2)], # ใ„ด
    [(0,0), (0,1), (0,2), (1,2)], # ใ„ฑ
    [(0,0), (1,0), (2,0), (2,1)],
    [(2,0), (2,1), (1,1), (0,1)],
    [(0,0), (0,1), (1,0), (2,0)],
    [(0,0), (0,1), (1,1), (2,1)],
    [(0,0), (0,1), (0,2), (1,1)], # ใ…œ
    [(1,0), (1,1), (1,2), (0,1)], # ใ…—
    [(0,0), (1,0), (2,0), (1,1)], # ใ…
    [(1,0), (0,1), (1,1), (2,1)], # ใ…“
    [(1,0), (2,0), (0,1), (1,1)],
    [(0,0), (1,0), (1,1), (2,1)],
    [(1,0), (0,1), (1,1), (0,2)],
    [(0,0), (0,1), (1,1), (1,2)]
]

DFS ๋ฅผ ์ด์šฉํ•œ ํ’€์ด๋„ ์žˆ๋‹ค?

์ฒ˜์Œ์— ๋‚˜๋Š” ์ด๋ฏธ ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ์˜ ํฌ๊ธฐ๊ฐ€ ์ •ํ•ด์ ธ์žˆ๊ธฐ ๋•Œ๋ฌธ์— DFS, BFS๋กœ ํ‘ธ๋Š” ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.

๊ทผ๋ฐ DFS ๋กœ ์•„์ฃผ ๊ณ ๊ธ‰์Šค๋Ÿฝ๊ฒŒ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค๋Š” ๊ฒƒ..

1. ํŠน์ • ์ขŒํ‘œ์— **์ƒํ•˜์ขŒ์šฐ ๋ฐฉ๋ฉด์œผ๋กœ 3๊ฐœ์˜ ๋ธ”๋ก**์„ ์ด์–ด ๋ถ™์ด๋ฉด 'ใ…', 'ใ…“', 'ใ…—', 'ใ…œ' ๋ชจ์–‘์„ ์ œ์™ธํ•œ ๋ชจ๋“  ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. 

2. 'ใ…', 'ใ…“', 'ใ…—', 'ใ…œ' ๋ชจ์–‘์˜ ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ๋Š” **2๋ฒˆ์งธ ๋ธ”๋ก๊นŒ์ง€ ๋ถ™์˜€์„ ๋•Œ** ์ƒˆ๋กœ์šด ๋ธ”๋ก์—์„œ ์ด์–ด๋ถ™์ผ ๋‹ค์Œ ๋ธ”๋ก์„ ํƒ์ƒ‰ํ•˜์ง€ ์•Š๊ณ  **๋‹ค์‹œ ๊ธฐ์กด ๋ธ”๋ก ์œ„์น˜์—์„œ ํƒ์ƒ‰**ํ•˜๋„๋ก ๋กœ์ง์„ ์ž‘์„ฑํ•˜๋ฉด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.