Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python33/lib64/python3.3/Tools/demo/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python33/lib64/python3.3/Tools/demo/__pycache__/queens.cpython-33.pyc

�
��f�c@sEdZdZGdd�d�Zdd�ZedkrAe�ndS(u�
N queens problem.

The (well-known) problem is due to Niklaus Wirth.

This solution is inspired by Dijkstra (Structured Programming).  It is
a classic recursive backtracking approach.
icBst|EeZdZedd�Zdd�Zddd�Zdd	�Zd
d�Zdd
�Z	dZ
dd�ZdS(uQueenscCs||_|j�dS(N(unureset(uselfun((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyu__init__s	uQueens.__init__cCsf|j}dg||_dg||_dgd|d|_dgd|d|_d|_dS(Niii(unuNoneuyurowuupudownunfound(uselfun((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyuresets	uQueens.reseticCs�x}t|j�D]l}|j||�r|j||�|d|jkrX|j�n|j|d�|j||�qqWdS(Ni(urangeunusafeuplaceudisplayusolveuremove(uselfuxuy((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyusolves
uQueens.solvecCs0|j|o/|j||o/|j||S(N(urowuupudown(uselfuxuy((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyusafe&suQueens.safecCs@||j|<d|j|<d|j||<d|j||<dS(Ni(uyurowuupudown(uselfuxuy((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyuplace)s

uQueens.placecCs@d|j|<d|j|<d|j||<d|j||<dS(Ni(uNoneuyurowuupudown(uselfuxuy((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyuremove/s

u
Queens.removecCs�|jd|_|jrdStdd|jd�x�t|jdd
d�D]p}tddd�xMt|j�D]<}|j||kr�tddd�qvtd	dd�qvWtd�qPWtdd|jd�dS(Niu+-u--u+u|uendu uQu.i����i����(unfoundusilentuprintunurangeuy(uselfuyux((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyudisplay7s	 uQueens.displayN(u__name__u
__module__u__qualname__uNu__init__uresetusolveusafeuplaceuremoveusilentudisplay(u
__locals__((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyuQueenss
uQueenscCs�ddl}d}t}|jdd�dgkrGd}|jd=n|jdd�rpt|jd�}nt|�}||_|j�td|jd�dS(Niiiu-nuFoundu
solutions.(	usysuNuargvuintuQueensusilentusolveuprintunfound(usysusilentunuq((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyumainFs
	
umainu__main__N(u__doc__uNuQueensumainu__name__(((u6/opt/alt/python33/lib64/python3.3/Tools/demo/queens.pyu<module>
s
8