๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[v.๋ฐฑํŠธ๋ž˜ํ‚น-N-Queen-9663]BAEKJOON_Python ๋ณธ๋ฌธ

๐Ÿฆฅ ์ฝ”ํ…Œ/BAEKJOON

[v.๋ฐฑํŠธ๋ž˜ํ‚น-N-Queen-9663]BAEKJOON_Python

์ง•์ง•์•ŒํŒŒ์นด 2022. 1. 26. 15:40
728x90
๋ฐ˜์‘ํ˜•

220126 ์ž‘์„ฑ

<๋ณธ ๋ธ”๋กœ๊ทธ๋Š” BAEKJOON ์„ ์ฐธ๊ณ ํ•ด์„œ ์ €๋งŒ์˜ ํ’€์ด๋ฅผ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค>

 

 

 

9663


N-Queen ๋ฌธ์ œ๋Š” ํฌ๊ธฐ๊ฐ€ N × N์ธ ์ฒด์ŠคํŒ ์œ„์— ํ€ธ N๊ฐœ๋ฅผ ์„œ๋กœ ๊ณต๊ฒฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋†“๋Š” ๋ฌธ์ œ
N์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ํ€ธ์„ ๋†“๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ


 

 

๋‚ด ํ’€์ด

def backTracking(rowPos) :
    global answer

    # ํ€ธ ๋ชจ๋“œ ๋ฐฐ์น˜ํ•˜๋ฉด ๋!
    if rowPos == n :
        answer += 1
        return
    
    for col in range(n) :
        flag = True
        # ์ด์ „ ํ–‰๋“ค
        for row in range(rowPos) :
            # ๊ฐ™์€ ์—ด์— ์žˆ๊ฑฐ๋‚˜, ๋Œ€๊ฐ์„ ์— ํ€ธ์ด ์ด๋ฏธ ์กด์žฌํ•˜๋ฉด ๊ฐ€์ง€์น˜๊ธฐ
            if queenLocate[row] == col or rowPos -row == abs(col-queenLocate[row]) :
                flag = False
                break

        if flag :
            queenLocate[rowPos] = col
            backTracking(rowPos + 1)

n = int(input())
answer = 0

# ๊ฐ row ๋งˆ๋‹ค queen ์œ„์น˜ ์ธ๋ฑ์Šค ์ €์žฅ๋ฆฌ์ŠคํŠธ
queenLocate = [0] * n
backTracking(0)
print(answer)

1. ๊ฐ ํ–‰๋งˆ๋‹ค Queen์€ ํ•˜๋‚˜๋งŒ ์กด์žฌํ•ด์•ผ ํ•˜๋ฏ€๋กœ, ๋งจ ์œ„ ํ–‰๋ถ€ํ„ฐ ๋‚ด๋ ค์˜ค๊ธฐ

2. ๊ฐ ํ–‰์—์„œ ์ด์ „ ํ–‰๋“ค์„ ๊ด€์ฐฐํ•˜๋ฉด์„œ ๊ฐ™์€ ์—ด์ด๋‚˜ ๋Œ€๊ฐ์„ ์— ํ€ธ์ด ์žˆ๋‹ค๋ฉด ๊ฐ€์ง€์น˜๊ธฐ

3. ๋งจ ๋ฐ‘์˜ ํ–‰๊นŒ์ง€ ํ€ธ์„ ์œ„์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ํ•˜๋‚˜ ์ฆ๊ฐ€

 

 

 

 

 

 

8
92

 

 

 

 

 

์ฐธ๊ณ ํ•œ ๋ธ”๋กœ๊ทธ ์ž…๋‹ˆ๋‹ค! ์„ค๋ช… ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค1 bbb

์ฒด์Šค,, ์›๋ฆฌ ๋ชจ๋ฅด๋ฉด ๋ชป ํ’€ ๋“ฏ์š” ใ…ก,ใ…ก,ใ…œใ…กใ…œ

์•„์ง๋„ ์ดํ•ด๊ฐ€ ์•ˆ๊ฐ€๋Š์œผใ…ก,,

https://studyandwrite.tistory.com/393

 

 

[๋ฐฑ์ค€(ํŒŒ์ด์ฌ/Python)] 9663_N-Queen - ๋ฐฑํŠธ๋ž™ํ‚น

https://www.acmicpc.net/problem/9663 9663๋ฒˆ: N-Queen N-Queen ๋ฌธ์ œ๋Š” ํฌ๊ธฐ๊ฐ€ N × N์ธ ์ฒด์ŠคํŒ ์œ„์— ํ€ธ N๊ฐœ๋ฅผ ์„œ๋กœ ๊ณต๊ฒฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋†“๋Š” ๋ฌธ์ œ์ด๋‹ค. N์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ํ€ธ์„ ๋†“๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ..

studyandwrite.tistory.com

 

728x90
๋ฐ˜์‘ํ˜•
Comments