Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

EightQueenProblem/안정원: Difference between revisions

From ZeroWiki
imported>anjw0111
No edit summary
imported>anjw0111
No edit summary
 
Line 28: Line 28:
   if n == len(set(vec[i]+i for i in cols)) == len(set(vec[i]-i for i in cols)):
   if n == len(set(vec[i]+i for i in cols)) == len(set(vec[i]-i for i in cols)):
     print vec
     print vec
----
----
[[EightQueenProblem]], [[EightQueenProblem2]], [[안정원]]
[[EightQueenProblem]], [[EightQueenProblem2]], [[안정원]]



Latest revision as of 14:26, 22 March 2014

다른 언어라면 이렇게 쉽게 안되었을 문제인데, 역시 Python입니다 ^ 오 ^

EightQueenProblem

  1. Start Time : 2014. 03. 16. 1:08
  2. End Time : 2014. 03. 16. 1:24
~Python
from itertools import permutations
n = 8
cols = range(n)
for vec in permutations(cols):
  if n == len(set(vec[i]+i for i in cols)) == len(set(vec[i]-i for i in cols)):
    for i in cols:
      for j in cols:
        if vec[i] == j: print ('Q'),
        else: print '#',
      print 
    print 
    break


EightQueenProblem2

~Python
from itertools import permutations
n = 8
cols = range(n)
for vec in permutations(cols):
  if n == len(set(vec[i]+i for i in cols)) == len(set(vec[i]-i for i in cols)):
    print vec

EightQueenProblem, EightQueenProblem2, 안정원