Advertisement
Guest User

Untitled

a guest
May 24th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.26 KB | None | 0 0
  1. initial=((0, 2, 1), (1, 0, 0), (1, 2, 1), (1, 3, 0), (2, 2, 1), (3, 1, 2), (3, 3, 0))
  2. successors = dict()
  3. niza = initial[:]
  4.  
  5. def proverka(tmp,lista):
  6. for a in lista:
  7. if a.__eq__(tmp) and a[2] != -1:
  8. return True
  9. return False
  10.  
  11. def pukajElement(tmp, lista):
  12. for a in lista:
  13. if a.__eq__(tmp) and a[2] != -1:
  14. x = lista.index(a)
  15. tup = (a[0], a[1], a[2] - 1)
  16. tmplista = lista[:x] + (tup,) + lista[x + 1:]
  17. # print(tmplista)
  18. lista = tmplista
  19. return lista
  20.  
  21.  
  22. def pukajDesno(tmp, lista):
  23. razlika = 50
  24. flag = False
  25. for a in lista:
  26. neisti = a.__ne__(tmp)
  27. if a[0] == tmp[0] and a[2] != -1 and neisti and tmp[1] < a[1]:
  28. if razlika > (a[1] - tmp[1]):
  29. razlika = tmp[1] - a[1]
  30. element = a
  31. flag = True
  32. # print("elementot e ")
  33. # print(element)
  34. if flag:
  35. for a in lista:
  36. isti = a.__eq__(element)
  37. if isti:
  38. x = lista.index(a)
  39. tup = (a[0], a[1], a[2] - 1)
  40. tmplista = lista[:x] + (tup,) + lista[x + 1:]
  41. # print(tmplista)
  42. lista = tmplista
  43. return lista
  44. else:
  45. #print("FLAZI22222222")
  46. return lista
  47.  
  48.  
  49. def pukajLevo(tmp, lista):
  50. razlika = 50
  51. flag = False
  52. for a in lista:
  53. neisti = a.__ne__(tmp)
  54. if a[0] == tmp[0] and a[2] != -1 and neisti and tmp[1] > a[1]:
  55. if razlika > (tmp[1] - a[1]):
  56. razlika = tmp[1] - a[1]
  57. element = a
  58. flag = True
  59. if flag:
  60. for a in lista:
  61. isti = a.__eq__(element)
  62. if isti:
  63. x = lista.index(a)
  64. tup = (a[0], a[1], a[2] - 1)
  65. tmplista = lista[:x] + (tup,) + lista[x + 1:]
  66. # print(tmplista)
  67. lista = tmplista
  68. return lista
  69. else:
  70. # print("FLAZI22222222")
  71. return lista
  72.  
  73.  
  74. def pukajGore(tmp, lista):
  75. razlika = 50
  76. flag = False
  77. for a in lista:
  78. neisti = a.__ne__(tmp)
  79. if a[1] == tmp[1] and a[2] != -1 and neisti and tmp[0] > a[0]:
  80. if razlika > (tmp[0] - a[0]):
  81. razlika = tmp[0] - a[0]
  82. element = a
  83. flag = True
  84. # print("elementot e ")
  85. # print(element)
  86. if flag:
  87. for a in lista:
  88. isti = a.__eq__(element)
  89. if isti:
  90. x = lista.index(a)
  91. tup = (a[0], a[1], a[2] - 1)
  92. tmplista = lista[:x] + (tup,) + lista[x + 1:]
  93. # print(tmplista)
  94. lista = tmplista
  95. return lista
  96. else:
  97. #print("FLAZI22222222")
  98. return lista
  99.  
  100.  
  101. def pukajDole(tmp,lista):
  102. razlika = 50
  103. flag = False
  104. for a in lista:
  105. neisti = a.__ne__(tmp)
  106. if a[1] == tmp[1] and a[2] != -1 and neisti and tmp[0] < a[0]:
  107. if razlika > (a[0] - tmp[0]):
  108. razlika = a[0] - tmp[0]
  109. element = a
  110. flag = True
  111. # print("elementot e ")
  112. # print(element)
  113. if flag:
  114. for a in lista:
  115. isti = a.__eq__(element)
  116. if isti:
  117. x = lista.index(a)
  118. tup = (a[0], a[1], a[2] - 1)
  119. tmplista = lista[:x] + (tup,) + lista[x + 1:]
  120. # print(tmplista)
  121. lista = tmplista
  122. return lista
  123. else:
  124. # print("FLAZI22222222")
  125. return lista
  126.  
  127. def cistiLista(lista):
  128. temp = []
  129. x=0
  130. for a in lista:
  131. if a[2] != -1:
  132. temp.__add__(lista.index())
  133. print(temp)
  134.  
  135.  
  136.  
  137. successors = dict()
  138. print("inicijalnata e")
  139. print(initial)
  140. # x=0
  141. # for a in initial:
  142. # #print(a)
  143. # int = initial[:]
  144. # if proverka(a, int):
  145. # int = pukajElement(a, int)
  146. # int = pukajDole(a, int)
  147. # int = pukajGore(a, int)
  148. # int = pukajLevo(a, int)
  149. # int = pukajDesno(a, int)
  150. # successors["W" + x.__str__()] = int
  151. #x += 1
  152. print("konecna e")
  153. print("Heloo")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement