买了lovelypython 当中的一道联系题 参考C++的改写成python的 参考地址http://www.cppblog.com/jetricy/archive/2009/02/04/72991.aspx #_*_ coding:utf-8 _*_ def display(board): global num num = num +1 queen = [[0 for i in range(8)] for j in range(8)] print dict print "第",num,"种***************************" for x in range(8): for y in range(8): if dict[x] == y: queen[x][y] = 1 for z in range(8): print queen[z] def fill_queen(board,nRow,nSize): if nRow == nSize: display(board) return for col in range(0,nSize): flag = 1 for i in range(0,nRow): if abs(board[i]-col) == abs(i-nRow): flag = 0 break if col == board[i]: flag = 0 break if flag == 1: board[nRow] = col fill_queen(board,nRow+1,nSize) dict = {} dict[0] = 0 num = 0 fill_queen(dict,0,8)