SILENT KILLERPanel

Current Path: > > lib64 > > > python2.7 > Demo > scripts >


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //lib64///python2.7/Demo/scripts/

NameTypeSizeLast ModifiedActions
README File 1009 bytes April 19 2020 21:13:39.
beer.py File 458 bytes April 10 2024 04:57:37.
beer.pyc File 703 bytes April 10 2024 04:58:46.
beer.pyo File 703 bytes April 10 2024 04:58:46.
eqfix.py File 6310 bytes April 10 2024 04:57:37.
eqfix.pyc File 4634 bytes April 10 2024 04:58:46.
eqfix.pyo File 4634 bytes April 10 2024 04:58:46.
fact.py File 1132 bytes April 10 2024 04:57:37.
fact.pyc File 1167 bytes April 10 2024 04:58:46.
fact.pyo File 1167 bytes April 10 2024 04:58:46.
find-uname.py File 1207 bytes April 10 2024 04:57:37.
find-uname.pyc File 1510 bytes April 10 2024 04:58:46.
find-uname.pyo File 1510 bytes April 10 2024 04:58:46.
from.py File 873 bytes April 10 2024 04:57:37.
from.pyc File 751 bytes April 10 2024 04:58:46.
from.pyo File 751 bytes April 10 2024 04:58:46.
lpwatch.py File 2837 bytes April 10 2024 04:57:37.
lpwatch.pyc File 2605 bytes April 10 2024 04:58:46.
lpwatch.pyo File 2605 bytes April 10 2024 04:58:46.
makedir.py File 509 bytes April 10 2024 04:57:37.
makedir.pyc File 732 bytes April 10 2024 04:58:46.
makedir.pyo File 732 bytes April 10 2024 04:58:46.
markov.py File 3589 bytes April 10 2024 04:57:37.
markov.pyc File 4025 bytes April 10 2024 04:58:46.
markov.pyo File 4025 bytes April 10 2024 04:58:46.
mboxconvert.py File 3188 bytes April 10 2024 04:57:37.
mboxconvert.pyc File 3253 bytes April 10 2024 04:58:46.
mboxconvert.pyo File 3253 bytes April 10 2024 04:58:46.
morse.py File 4314 bytes April 10 2024 04:57:37.
morse.pyc File 4431 bytes April 10 2024 04:58:46.
morse.pyo File 4431 bytes April 10 2024 04:58:46.
pi.py File 887 bytes April 10 2024 04:57:37.
pi.pyc File 921 bytes April 10 2024 04:58:46.
pi.pyo File 921 bytes April 10 2024 04:58:46.
pp.py File 3814 bytes April 10 2024 04:57:37.
pp.pyc File 2334 bytes April 10 2024 04:58:46.
pp.pyo File 2334 bytes April 10 2024 04:58:46.
primes.py File 602 bytes April 10 2024 04:57:37.
primes.pyc File 921 bytes April 10 2024 04:58:46.
primes.pyo File 921 bytes April 10 2024 04:58:46.
queens.py File 2238 bytes April 10 2024 04:57:37.
queens.pyc File 3024 bytes April 10 2024 04:58:46.
queens.pyo File 3024 bytes April 10 2024 04:58:46.
script.py File 961 bytes April 10 2024 04:57:37.
script.pyc File 1235 bytes April 10 2024 04:58:46.
script.pyo File 1235 bytes April 10 2024 04:58:46.
unbirthday.py File 3139 bytes April 10 2024 04:57:37.
unbirthday.pyc File 3002 bytes April 10 2024 04:58:46.
unbirthday.pyo File 3002 bytes April 10 2024 04:58:46.
update.py File 2749 bytes April 10 2024 04:57:37.
update.pyc File 2759 bytes April 10 2024 04:58:46.
update.pyo File 2759 bytes April 10 2024 04:58:46.

Reading File: //lib64///python2.7/Demo/scripts//queens.py

#! /usr/bin/python2.7

"""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 true, 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()

SILENT KILLER Tool