Hackfut Security File Manager
Current Path:
/usr/lib64/python2.6/Demo/scripts
usr
/
lib64
/
python2.6
/
Demo
/
scripts
/
📁
..
📄
README
(1.02 KB)
📄
beer.py
(426 B)
📄
beer.pyc
(712 B)
📄
beer.pyo
(712 B)
📄
eqfix.py
(6.17 KB)
📄
eqfix.pyc
(4.61 KB)
📄
eqfix.pyo
(4.61 KB)
📄
fact.py
(1.09 KB)
📄
fact.pyc
(1.1 KB)
📄
fact.pyo
(1.1 KB)
📄
find-uname.py
(1.18 KB)
📄
find-uname.pyc
(1.51 KB)
📄
find-uname.pyo
(1.51 KB)
📄
from.py
(877 B)
📄
from.pyc
(762 B)
📄
from.pyo
(762 B)
📄
ftpstats.py
(4.47 KB)
📄
ftpstats.pyc
(3.87 KB)
📄
ftpstats.pyo
(3.87 KB)
📄
lpwatch.py
(3.13 KB)
📄
lpwatch.pyc
(2.68 KB)
📄
lpwatch.pyo
(2.68 KB)
📄
makedir.py
(513 B)
📄
makedir.pyc
(739 B)
📄
makedir.pyo
(739 B)
📄
markov.py
(3.66 KB)
📄
markov.pyc
(4.29 KB)
📄
markov.pyo
(4.29 KB)
📄
mboxconvert.py
(3.12 KB)
📄
mboxconvert.pyc
(3.22 KB)
📄
mboxconvert.pyo
(3.22 KB)
📄
mkrcs.py
(1.78 KB)
📄
mkrcs.pyc
(1.48 KB)
📄
mkrcs.pyo
(1.48 KB)
📄
morse.py
(4.23 KB)
📄
morse.pyc
(4.39 KB)
📄
morse.pyo
(4.39 KB)
📄
newslist.doc
(2.36 KB)
📄
newslist.py
(11.1 KB)
📄
newslist.pyc
(7.73 KB)
📄
newslist.pyo
(7.73 KB)
📄
pi.py
(931 B)
📄
pi.pyc
(931 B)
📄
pi.pyo
(931 B)
📄
pp.py
(3.88 KB)
📄
pp.pyc
(2.39 KB)
📄
pp.pyo
(2.39 KB)
📄
primes.py
(568 B)
📄
primes.pyc
(947 B)
📄
primes.pyo
(947 B)
📄
queens.py
(2.19 KB)
📄
queens.pyc
(2.97 KB)
📄
queens.pyo
(2.97 KB)
📄
script.py
(786 B)
📄
script.pyc
(1003 B)
📄
script.pyo
(1003 B)
📄
unbirthday.py
(3.24 KB)
📄
unbirthday.pyc
(2.97 KB)
📄
unbirthday.pyo
(2.97 KB)
📄
update.py
(2.69 KB)
📄
update.pyc
(2.73 KB)
📄
update.pyo
(2.73 KB)
📄
wh.py
(91 B)
📄
wh.pyc
(153 B)
📄
wh.pyo
(153 B)
Editing: queens.py
#! /usr/bin/env python2.6 """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. """ N = 8 # Default; command line overrides class Queens: def __init__(self, n=N): self.n = n self.reset() def reset(self): n = self.n self.y = [None]*n # Where is the queen in column x self.row = [0]*n # Is row[y] safe? self.up = [0] * (2*n-1) # Is upward diagonal[x-y] safe? self.down = [0] * (2*n-1) # Is downward diagonal[x+y] safe? self.nfound = 0 # Instrumentation def solve(self, x=0): # Recursive solver for y in range(self.n): if self.safe(x, y): self.place(x, y) if x+1 == self.n: self.display() else: self.solve(x+1) self.remove(x, y) def safe(self, x, y): return not self.row[y] and not self.up[x-y] and not self.down[x+y] def place(self, x, y): self.y[x] = y self.row[y] = 1 self.up[x-y] = 1 self.down[x+y] = 1 def remove(self, x, y): self.y[x] = None self.row[y] = 0 self.up[x-y] = 0 self.down[x+y] = 0 silent = 0 # If set, count solutions only def display(self): self.nfound = self.nfound + 1 if self.silent: return print '+-' + '--'*self.n + '+' for y in range(self.n-1, -1, -1): print '|', for x in range(self.n): if self.y[x] == y: print "Q", else: print ".", print '|' print '+-' + '--'*self.n + '+' def main(): import sys silent = 0 n = N if sys.argv[1:2] == ['-n']: silent = 1 del sys.argv[1] if sys.argv[1:]: n = int(sys.argv[1]) q = Queens(n) q.silent = silent q.solve() print "Found", q.nfound, "solutions." if __name__ == "__main__": main()
Upload File
Create Folder