고전적 퍼즐게임. 체스판위의 Queen은 장기의 처럼 전후좌우 이동이 가능하며, 대각선으로도 가능하다. 총 8*8 크기의 체스판위에 Queen 8개를 올려놓고 이들이 서로 공격하지 않도록 자리배치하는 문제.

얼마전 각자의 자신있는 ProgrammingLanguage로 이 문제를 풀어보라는 문제(?)를 접하고, 풀어봤다. 당근 yong27Python으로 풀었다. 이문제에 대한 문제풀이 경연대회는 EightQueenProblem 에서 확인할 수 있다.

See EightQueen.py


yong27이가 이 문제를 풀면서 느낀점이 있다면, 무작정 암생각없이 컴퓨터에 의존하려하지말자. 문제에 대한 생각이 필요하다. 그 생각은 그 문제의 범위를 줄여줄 수 있고, 더 나아가 보다 쉬운 접근방법을 제공한다. 한가지 더, 생각의 수단에 OOP의 장점을 적극 활용한다. 내 문제에서 객체를 선별하고 그 객체에게 책임을 부여한다.

EightQueenProblem (last edited 2014-04-11 16:50:01 by 61)

web biohackers.net