πŸ‘¨β€πŸ’»
Hamin TIL
  • Today I Learned πŸ§‘πŸ»β€πŸ’»
  • 회고
  • git
    • git_basics
      • Git 101
      • Git branch
      • Git_ignore
    • Git Book
    • μš°μ•„ν•œν˜•μ œλ“€
    • pull_request
  • db
    • DA
      • λ°μ΄ν„°ν‘œμ€€ν™”
      • 데이터_μš”κ±΄λΆ„μ„
      • μ „μ‚¬μ•„ν‚€ν…μ²˜_이해
      • 데이터λͺ¨λΈλ§
    • SQL
      • SQLκΈ°λ³Έλ°ν™œμš©
        • SQLν™œμš©
          • μ ˆμ°¨ν˜•SQL
          • κ³„μΈ΅ν˜•μ§ˆμ˜μ™€μ…€ν”„μ‘°μΈ
          • DCL
          • κ·Έλ£Ήν•¨μˆ˜
          • μœˆλ„μš°ν•¨μˆ˜
          • ν‘œμ€€μ‘°μΈ
          • μ§‘ν•©μ—°μ‚°μž
          • μ„œλΈŒμΏΌλ¦¬
        • SQLκ³ κΈ‰ν™œμš©λ°νŠœλ‹
          • μ˜΅ν‹°λ§ˆμ΄μ €μ™€μ‹€ν–‰κ³„νš
          • μ‘°μΈμˆ˜ν–‰μ›λ¦¬
          • 인덱슀기본
        • SQLκΈ°λ³Έ
          • ν•¨μˆ˜
          • κ΄€κ³„ν˜•λ°μ΄ν„°λ² μ΄μŠ€κ°œμš”
          • GROUPBY,HAVING절
          • DDL
          • 쑰인
          • ORDERBY절
          • DML
          • WHERE절
          • TCL
      • 데이터λͺ¨λΈλ§μ˜μ΄ν•΄
        • 데이터λͺ¨λΈκ³Όμ„±λŠ₯
          • μ •κ·œν™”μ˜ μ„±λŠ₯
          • λ°μ΄ν„°λ² μ΄μŠ€κ΅¬μ‘°μ™€μ„±λŠ₯
          • λΆ„μ‚°λ°μ΄ν„°λ² μ΄μŠ€μ™€μ„±λŠ₯
          • λŒ€λŸ‰ 데이터에 λ”°λ₯Έ μ„±λŠ₯
          • λ°˜μ •κ·œν™”μ™€ μ„±λŠ₯
          • μ„±λŠ₯데이터λͺ¨λΈλ§μ˜ κ°œμš”
        • 데이터λͺ¨λΈλ§μ˜μ΄ν•΄
          • μ‹λ³„μž
          • 속성
          • 관계
          • μ—”ν„°ν‹°
          • 데이터 λͺ¨λΈμ˜ 이해
    • DB
  • trouble
    • libomp
    • After macOS update, git command
    • system
  • algorithm
    • BOJ
      • ν‰λ²”ν•œ λ°°λ‚­
      • 17825-μ£Όμ‚¬μœ„μœ·λ†€μ΄
      • 14888-μ—°μ‚°μžλΌμ›Œλ„£κΈ°
      • 14503-λ‘œλ΄‡μ²­μ†ŒκΈ°
      • 10157
      • 14502-μ—°κ΅¬μ†Œ
      • 18428-κ°μ‹œν”Όν•˜κΈ°
      • 14501
      • 18405-κ²½μŸμ μ „μ—Ό
      • 14499-μ£Όμ‚¬μœ„κ΅΄λ¦¬κΈ°
      • 16236-아기상어
      • 15686-μΉ˜ν‚¨λ°°λ‹¬
      • 19237-μ–΄λ₯Έμƒμ–΄
      • 16234-인ꡬ이동
      • 19236-μ²­μ†Œλ…„μƒμ–΄
      • 1339-λ‹¨μ–΄μˆ˜ν•™
      • 리λͺ¨μ½˜
      • 18353 - λ³‘μ‚¬λ°°μΉ˜ν•˜κΈ°
      • 18352-νŠΉμ •κ±°λ¦¬μ˜λ„μ‹œμ°ΎκΈ°
      • 12100-2048
      • N-Queen
      • 3190-λ±€
      • 11724
    • programmers
      • μ˜μ–΄λλ§μž‡κΈ°
      • κΈ°λ‘₯κ³Ό 보
      • H - index
      • μ •μˆ˜μ‚Όκ°ν˜•
      • 2018 KAKAO BLIND RECRUITMENT - μ••μΆ•
      • μ‚Όκ°λ‹¬νŒ½μ΄
      • κ±°μŠ€λ¦„λˆ
      • [1μ°¨] μ…”ν‹€λ²„μŠ€
    • data_structure
      • Queue
      • Graph
      • Stack
      • Hash table
    • implementation
      • dynamic_programming
      • sort
      • Least common multiple
      • dfs
      • dijkstra
      • bfs
      • binary_search
    • aps
      • notes
    • modules
  • python
    • requirements.txt
    • Jupyter notebook
    • 00_λ“€μ–΄κ°€κΈ° 전에
    • Python Virtual Environment
    • Python Syntax
  • django
    • Class Based View in Django
    • Model in Django
    • URL Name
    • Form and ModelForm
    • Authentication
    • Tips & Tricks
    • Optimization
    • Request and Response Objects
    • Templates
    • Variable Routing & DTL
    • Django REST API with JSON web token (JWT)
    • Intro to Django
    • Django REST Framework
    • Wrap-up
    • Image Upload
  • javascript
    • Ajax (Asynchronous Javascript And XML)
    • Document Object Model
    • Java Script 101
    • ES (ECMAscript)
  • java
    • Java 101
  • aws
    • beginning_cloud_computing_with_aws
      • 02 AWS μ£Όμš” μ„œλΉ„μŠ€ μ΄ν•΄ν•˜κΈ°
      • 01 μ•„λ§ˆμ‘΄ μ›Ή μ„œλΉ„μŠ€ Cloud κ°œμš”
  • programming
    • Communication
    • CS_μš©μ–΄μ‚¬μ „
  • vue.js
    • 01_Vue.js_Intro
  • data_science
    • 01_λ°μ΄ν„°μ—μ„œμΈμ‚¬μ΄νŠΈλ°œκ²¬ν•˜κΈ°
    • pandas
    • 04_데이터뢄λ₯˜λͺ¨λΈ
    • 02_ν…μŠ€νŠΈλ§ˆμ΄λ‹μ²«κ±ΈμŒ
    • 05_μ’…ν•©μ˜ˆμ œ
    • 03_미래λ₯Όμ˜ˆμΈ‘ν•˜λŠ”λ°μ΄ν„°λΆ„μ„
    • Statistics
      • λͺ¨μˆ˜μ™€ μΆ”μ •λŸ‰
    • ν†΅κ³„ν•™λ…ΈνŠΈ
  • linux
    • Linux Commands
  • ide
    • VScode
    • Pycharm
  • html,css
    • HTML 101
    • CSS 101
  • colab
    • colab_101
  • μ˜μ‚¬κ²°μ •λ‚˜λ¬΄λ°λͺ¨ν˜•비ꡐ
Powered by GitBook
On this page

Was this helpful?

  1. algorithm
  2. BOJ

N-Queen

Previous12100-2048Next3190-λ±€

Last updated 4 years ago

Was this helpful?

  • ν•œ 행에 퀸이 κΌ­ ν•˜λ‚˜μ”© μžˆμ–΄μ•Ό 함

  • 퀸을 λ†“λŠ” ν•œ 경우의 수λ₯Ό 1차원 λ°°μ—΄λ‘œ λ†“μ•„μ„œ μΈλ±μŠ€κ°€ 행을 λœ»ν•˜κ³ , ν•΄λ‹Ή μˆ«μžλŠ” μ–΄λŠ 열에 놓을 것인지가 λœλ‹€.

  • λ‹€μŒ ν–‰μ˜ 퀸을 μ •ν•  λ•Œλ§ˆλ‹€ 이미 같은 열에 μžˆλŠ”μ§€ κ²€ν† ν•˜κ³ , 기쑴의 것듀과 λŒ€κ°μ„  μœ„μΉ˜μ— λ§žλŠ”μ§€ κ²€ν† ν•˜λ©΄μ„œ λ§žμ„ λ•Œλ§Œ μ§‘μ–΄λ„£κ³  λ‹€μŒ 행을 ν–₯ν•΄ μž¬κ·€

  • λͺ¨λ“  행이 μ°Όλ‹€λ©΄, return

  • 체슀판의 λŒ€μΉ­μ„±μ„ κ³ λ €ν•΄ μ—°μ‚°νšŸμˆ˜ μ€„μ—¬μ€Œ

def recu(na):
    global cnt

    if len(na) == n:
        cnt += 1
        return

    for i in range(n):
        if i not in na:
            p = True

            for j in range(len(na)):
                if abs(na[j] - i) == abs(j - len(na)):
                    p = False
                    break

            if p:
                ta = []
                for j in range(len(na)):
                    ta.append(na[j])
                ta.append(i)
                recu(ta)


import sys
sys.stdin = open('note.txt', 'r')

n = int(input())

cnt = 0

# 짝수
if not n % 2:
    for i in range(n//2):
        a = [i]
        recu(a)
    print(2*cnt)

# ν™€μˆ˜
else:
    for i in range(n//2):
        a = [i]
        recu(a)
    cnt *= 2

    a = [n // 2]
    recu(a)
    print(cnt)
https://www.acmicpc.net/problem/9663