E D R , A S I H C RSS

Eight Queen Problem2

EightQueenProblem을 아직 ν•΄κ²°ν•˜μ§€ μ•Šμ€ 뢄은 이 νŽ˜μ΄μ§€λΌ μ ˆλŒ€λ‘œ 읽지 λ§ˆμ„Έμš”.

해결을 ν•˜μ‹  뢄은 μ•„λž˜λΌ λ³΄μ„Έμš”.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

EightQueenProblem을 ν•΄κ²°ν•˜μ‹  것을 μΆ•ν•˜λ“œλ¦½λ‹ˆλ‹€. EightQueenProblem νŽ˜μ΄μ§€μ— 개발 μ‹œκ°„κ³Ό μ†ŒμŠ€ 라인 수 등을 κΈ°λ‘ν•˜μ…¨λ‚˜μš”? 사싀 λ¬Έμ œλŠ” ν•˜λ‚˜κ°€ 더 μžˆμŠ΅λ‹ˆλ‹€. λŒ€λΆ€λΆ„μ˜ ν”„λ‘œκ·Έλž˜λ° μˆ™μ œ/λŒ€νšŒλŠ” μ½”λ“œμ˜ λ””μžμΈμ€ 잘 따지지 μ•ŠμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ‹€μ„Έκ³„μ˜ λ¬Έμ œμ—μ„œλŠ” μ½”λ“œμ˜ 적응도(adaptability)κ°€ 맀우 μ€‘μš”ν•œ μš”μ†Œκ°€ λ©λ‹ˆλ‹€. μžμ‹ μ΄ μž‘μ„±ν•œ ν”„λ‘œκ·Έλž¨μ΄ μ–Όλ§ˆλ‚˜ μƒˆλ‘œμš΄ μš”κ΅¬μ‚¬ν•­μ— 잘 적응을 ν•˜λŠ”μ§€λΌ λ³΄λ©΄, μžμ‹ μ΄ μ–Όλ§ˆλ‚˜ λ””μžμΈμ„ μ œλŒ€λ‘œ ν˜Ήμ€ μ—‰λ§μœΌλ‘œ ν–ˆλŠ”μ§€ μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. λ””μžμΈ μ§ˆμ— λŒ€ν•œ λ°”λ‘œλΈν„°κ°€ λ˜λŠ” 것이죠.

μƒˆ λ¬Έμ œλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. μžμ‹ μ΄ μž‘μ„±ν•œ ν”„λ‘œκ·Έλž¨μ„ μˆ˜μ •μ„ ν•΄μ„œ, EightQueenProblem의 일반적인 λ¬Έμ œλΌ ν‘ΈλŠ” κ²ƒμž…λ‹ˆλ‹€. 즉, 8X8μ—μ„œ 8개의 여왕을 λ°°μΉ˜ν•˜λŠ” μ„œλ‘œ λ‹€λ₯Έ λͺ¨λ“  해법(총 92가지)을 κ΅¬ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

EightQueenProblemμ—μ„œμ™€ λ§ˆμ°¬κ°€μ§€λ‘œ ν”„λ‘œκ·Έλž¨ μž‘μ„± 후에 λ‹€μŒ 칸을 μ±„μ›Œμ£Όμ„Έμš”.

λ„μ „μžμ΄μˆ˜μ •μ‹œκ°„μ΅œμ’… μ†ŒμŠ€λΌμΈμˆ˜(μ£Όμ„μ œμ™Έ)μ‚¬μš©μ–Έμ–΄
이μ€μš± 0m (μ†ŒμŠ€μˆ˜μ • μ—†μŒ) 40 lines C
μ΄λ•μ€ 4m 73 lines EightQueenProblem2/이덕μ€μ†ŒμŠ€ C++
μ΅œνƒœν˜Έ 4m 69 lines EightQueenProblem/μ΅œνƒœν˜Έμ†ŒμŠ€ C++
μ΅œκ΄‘μ‹ 8m 141 lines C++
μ΄μ„ ν˜Έ 32m 64 lines C++
κ°•μ„μ²œ 2m 131 lines (+ 82 line for testcode. total 213 lines) python
μž„μΈνƒ 0m (μ†ŒμŠ€μˆ˜μ • μ—†μŒ) 75 lines C++
μ΄μ„ μš° 1m 114 lines java
μ΅œλ΄‰ν™˜ 24m 86 lines EightQueenProblem2/μ΅œλ΄‰ν™˜ C++
이강성 15m 43 lines EightQueenProblem2/이강성 python
κ°•μΈμˆ˜ 67 lines/28 lines EightQueenProblem/κ°•μΈμˆ˜ C++/python
icarus 5m 40 lines Eight Queen Problem/lasy0901 C++
nextream 0.1m 21 lines EightQueenProblem/nextream μ—μ„œ check(1)을 check(0)으둜 Javascript
da_answer 5m 135 lines EightQueenProblem/da_answer showMessage뢀뢄을 λ¦¬μ»€μ‹œλΈŒ μ•ˆμͺ½μœΌλ‘œ 이동 Delphi
λ°₯벌레 37m 197 lines EightQueenProblem/λ°₯벌레 Delphi
κΉ€μ€μ—½ 65m 71 lines EightQueenProblem/κΉ€μ€μ—½ C++
μ•ˆμ •μ› 1m 6 lines EightQueenProblem/μ•ˆμ •μ› Python

"μ†ŒμŠ€μˆ˜μ • μ—†μŒ"은 잘 이해가 λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ²«λ²ˆμ§Έμ™€ λ‘λ²ˆμ§Έμ˜ μš”κ΅¬μ‚¬ν•­, 즉 κΈ°λŒ€ν•˜λŠ” κ²°κ³Όκ°€ λ‹€λ₯΄λ‹€λŠ” 점을 생각할 λ•Œ ν”„λ‘œκ·Έλž¨μ΄ μ‘°κΈˆμ΄λΌλ„ 달라져야 ν•©λ‹ˆλ‹€. λΆ„λͺ… μ²˜μŒμ—λŠ” λͺ¨λ“  ν•΄λΌ κ΅¬ν•˜λΌλŠ” μš”κ΅¬μ‘°κ±΄μ΄ μ—†μ—ˆλŠ”λ° κ·Έλ ‡κ²Œ ν–ˆλ‹€λ©΄ λ‹Ήμ‹œλ‘œμ„œλŠ” 그건 YAGNI(You Aren't Gonna Need It)μ΄κ±°λ‚˜ ν˜Ήμ€ 고객이 μ›ν•˜μ§€ μ•ŠλŠ” ν”„λ‘œκ·Έλž¨ μ•„λ‹κΉŒμš”?
글을 잘λͺ» μ΄ν•΄ν–ˆμŠ΅λ‹ˆλ‹€. λ‹¨μˆœνžˆ 두 라인을 μ£Όμ„μ²˜λ¦¬ ν•˜λŠ”κ²ƒμ΄λΌ μ‹œκ°„μ΄ 듀지 μ•Šμ€κ²ƒμ΄ μ•„λ‹Œκ°€ λΌλŠ” 생각을 ν–ˆμ—ˆλŠ”λ°, μ•„λ‹ˆμ—ˆλ„μš”. μ •μ •ν–ˆμŠ΅λ‹ˆλ‹€. -μ΄μ„ μš°


처음 λ¬Έμ œμ— 'λͺ¨λ“  ν•΄λΌ κ΅¬ν•΄μ„œλŠ” μ•ˆλœλ‹€' λΌλŠ” 말도 μ—†κ³ , 'λͺ¨λ“  ν•΄λΌ κ΅¬ν•˜λΌ' λΌλŠ” 말도 μ—†λŠ”λ°.. μ œκ°€ 문제 μ΄ν•΄λΌ μž˜λͺ»ν•œκ±΄κ°€μš”..? 지적해 μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€ - μž„μΈνƒ


λ§Œμ•½ 이 λͺ¨λ“  것을 μ™„λ£Œν–ˆκ³ , λ­”κ°€ 더 도전할 것을 μ°ΎλŠ”λ‹€λ©΄, N-Queens Problem을 ν’€λ©΄ λ©λ‹ˆλ‹€. (μš”κ΅¬μ‚¬ν•­μ˜ 또 λ‹€λ₯Έ λ³€ν™”! :( ) NXN μ²΄μŠ€νŒμ—μ„œ N개의 여왕을 λ°°μΉ˜ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ΄ λ˜λ„λ‘ μˆ˜μ •ν•˜λŠ” κ²λ‹ˆλ‹€.

DeleteMe) μ²˜μŒλΆ€ν„° 랜덀으둜 λ‚˜μ˜¬μˆ˜ 있게 κ΅¬ν˜„ν–ˆλŠ”λ° 92κ°€μ§€μ˜ 방법을 λͺ¨λ‘ 좜λ ₯ν•΄μ•Ό ν•˜λ‚˜μš”?
λ„€. λ§Œμ•½ κ·Έλ ‡κ²Œ λ˜λ„λ‘ ν”„λ‘œκ·Έλž¨μ„ μˆ˜μ •ν•˜λŠ”λ° 어렀움이 μžˆκ±°λ‚˜ μ‹œκ°„μ΄ 많이 κ±Έλ¦°λ‹€λ©΄ 처음 λ””μžμΈμ΄ 그닀지 적응도가 높지 λͺ»ν–ˆλ‹€λŠ” 반증일 수 있겠죠.

μ €μ˜ κ²½μš°κ°€ κ·Έλ ‡μ§€μš”..γ…‘γ…‘ μ†ŒμŠ€λΌ μ–΄μΌ€ λ§Œλ“€μ—ˆκΈΈλž˜ κ³ μΉ˜λŠ”λ°.. ν—€λ§€λŠ”μ§€.. 쿨럭.. --μ„ ν˜Έ.

μ΄λŸ¬ν•œ λ³€ν˜• N-Queen λ¬Έμ œλŠ” μ–΄λ–»μŠ΅λ‹ˆκΉŒ? http://eunjae85.new21.org/problem11/problem11.htm μž…λ ₯값은 nκ³Ό h이고, ν•œ 퀸이 hκ°œκΉŒμ§€ λ‹€λ₯Έ 퀸을 곡격할 수 있게 ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. h=0 이면 보톡 N-Queen λ¬Έμ œκ°€ λ˜μ§€μš”. --μ•„λ¬΄κ°œ.

선택사항 : EightQueenProblemSecondTry
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:11
Processing time 0.0454 sec