코딩 테스트/코딩 테스트 - 문제
[프로그래머스] N-Queen
안스 인민군
2023. 2. 20. 13:24
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
이 문제는 정말 5번이상 풀었지만 계속 풀이법을 근접할 뿐 풀지를 못했다....
담에는 풀 수 있겠지...??
cols = []
result = 0
def Check(row, col):
global cols
for i in range(row):
if cols[i] == col: return False
if row - col == i - cols[i]: return False
if row+col == i + cols[i]: return False
return True
def backtracking(row,n):
global cols,result
if row == n:
result += 1
return
for col in range(n):
if Check(row,col):
cols[row] = col
backtracking(row+1,n)
def solution(n):
global result,cols
cols = [0]*n
backtracking(0,n)
return result