Advertisement
rolfvanoven

troglodiet dag 11AB

Dec 12th, 2021
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.54 KB | None | 0 0
  1. # zoeken we antwoord A of B?
  2. vraag = 'B'
  3.  
  4. # bestand lezen en in stukjes hakken:
  5. bestand = open('input.txt', 'r')
  6. alles = bestand.readlines()
  7.  
  8. for x in range(len(alles)):
  9.   alles[x] = alles[x].replace('\n', '')
  10.  
  11. for x in range(10):
  12.   alles[x] = list(alles[x])
  13.  
  14. for y in range(10):
  15.   for x in range(10):
  16.     alles[y][x] = int(alles[y][x])
  17.  
  18. if vraag == 'A':
  19.   stappen = 100
  20. if vraag == 'B':
  21.   stappen = 300
  22.  
  23. omheen = [[-1, -1], [-1, 0], [-1, 1], [0, -1], [0, +1], [1, -1], [1, 0], [1,1]]
  24.  
  25. flitsen = 0
  26. asynchroon = True
  27. for stap in range(stappen):
  28.   for y in range(10):
  29.     for x in range(10):
  30.       alles[y][x] += 1
  31.   klaar = False
  32.   while klaar == False:
  33.     klaar = True
  34.     for y in range(10):
  35.       for x in range(10):
  36.         if alles[y][x] != 'F':
  37.           if alles[y][x] > 9:
  38.             klaar = False
  39.             alles[y][x] = 'F'
  40.             flitsen += 1
  41.             for z in range(8):
  42.               if y+omheen[z][0] > -1 and y+omheen[z][0] < 10 and x+omheen[z][1] > -1 and x+omheen[z][1] < 10:
  43.                 if alles[y+omheen[z][0]][x+omheen[z][1]] != 'F':
  44.                   alles[y+omheen[z][0]][x+omheen[z][1]] += 1
  45.   if asynchroon:
  46.     tegelijk = True
  47.     for y in range(10):
  48.       for x in range(10):
  49.         if alles[y][x] != 'F':
  50.           tegelijk = False
  51.     if tegelijk:
  52.       asynchroon = False
  53.       antwoordb = stap + 1
  54.   for y in range(10):
  55.     for x in range(10):
  56.       if alles[y][x] == 'F':
  57.         alles[y][x] = 0
  58.  
  59. if vraag == 'A':
  60.   print(flitsen)
  61. if vraag == 'B':
  62.   print(antwoordb)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement