davegimo

verifica livelli

Mar 20th, 2022
904
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.99 KB | None | 0 0
  1. def verifica(a,b):
  2.     return controlla(a,b,0)
  3.  
  4.  
  5. def controlla(a,b,liv_a):
  6.     if verifica_presenza(a.val,b,liv_a,0) == True:
  7.         return True
  8.  
  9.     if a.sx == None and a.dx == None:
  10.         return False
  11.  
  12.     verifica_sx = False
  13.     verifica_dx = False
  14.  
  15.     if a.sx != None:
  16.         verifica_sx = controlla(a.sx,b,liv_a + 1)
  17.  
  18.     if a.dx != None:
  19.         verifica_dx = controlla(a.dx,b,liv_a + 1)
  20.  
  21.     if verifica_sx == True o verifica_dx == True:
  22.         return True
  23.  
  24.     return False
  25.  
  26.  
  27. def verifica_presenza(val,b,liv_a,liv_b):
  28.  
  29.     if b.val == val and liv_a > liv_b:
  30.         return True
  31.  
  32.     if b.sx == None and b.dx == None:
  33.         return False
  34.  
  35.    
  36.     verifica_sx = False
  37.     verifica_dx = False
  38.  
  39.     if b.sx != None:
  40.         verifica_sx = verifica_presenza(val,b.sx,liv_a,liv_b+1)
  41.  
  42.     if b.dx != None:
  43.         verifica_dx = verifica_presenza(val,b.dx,liv_a,liv_b+1)
  44.  
  45.  
  46.     if verifica_sx == True or verifica_dx == True:
  47.         return True
  48.  
  49.     return False
Advertisement
Add Comment
Please, Sign In to add comment