-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFrontend.py
97 lines (75 loc) · 2.82 KB
/
Frontend.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
__author__ = 'martin'
import ConfigParser
import PicrossAlgorithms
import GameConfiguration
import time
t=time.time()
#import sys,os
#sys.path.append(os.path.realpath('..'))
#print sys.path
#config =ConfigParser.RawConfigParser()
#config.read("GameConfiguration.txt")
#side_len=config.get("GameDefinition","side_len")
#rows = config.get("Rows","rows")
#columns= config.get("Columns","columns")
#print rows.split(";")
rows =GameConfiguration.rows
columns=GameConfiguration.columns
print "no.Rows:%s, no.Columns:%s " % (rows.__len__(),columns.__len__())
side_len=GameConfiguration.side_len
row_possibilities = []
for elem in rows:
row_possibilities.append(PicrossAlgorithms.PossibleArrangements(elem,side_len))
column_possibilities = []
for elem in columns:
column_possibilities.append(PicrossAlgorithms.PossibleArrangements(elem,side_len))
column_concurr=map(PicrossAlgorithms.FindConcurrence,column_possibilities)
row_concurr=map(PicrossAlgorithms.FindConcurrence,row_possibilities)
#print row_possibilities
#print column_possibilities
#for col in column_concurr:
# print col
#print "\n\n"
#for row in row_concurr:
# print row
#
#print "\n\n"
#print column_possibilities
#print PicrossAlgorithms.ImprovedReducePossibilities(column_possibilities,row_concurr[4],4)
ct=0
while(PicrossAlgorithms.CheckFinished(row_possibilities)==False or PicrossAlgorithms.CheckFinished(column_possibilities)==False):
for i in range(row_concurr.__len__()):
column_possibilities=PicrossAlgorithms.ImprovedReducePossibilities(column_possibilities,row_concurr[i],i)
#print len(row_possibilities[i])
for i in range(column_concurr.__len__()):
row_possibilities=PicrossAlgorithms.ImprovedReducePossibilities(row_possibilities,column_concurr[i],i)
#print "p1"
#print column_possibilities
#print row_possibilities
#print "p2"
#print column_concurr
#print row_concurr
#print time.time()
#print ct
ct+=1
#print ct
column_concurr=PicrossAlgorithms.CheckSet(column_possibilities,column_concurr)
row_concurr=PicrossAlgorithms.CheckSet(row_possibilities,row_concurr)
#print "while finished"
column_concurr=map(PicrossAlgorithms.FindConcurrence,column_possibilities)
row_concurr=map(PicrossAlgorithms.FindConcurrence,row_possibilities)
#for elem in row_possibilities:
# print elem
#print "\n\n"
#for elem in column_possibilities:
# print elem
#raw_input()
print ct
print "Execution time: %s" %(time.time()-t)
for col in column_concurr:
print col
print "\n\n"
for row in row_concurr:
print row
def printx(x):
print x