summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAineopintojen-harjoitustyo-Algoritmit-j <github-hy-tiralabra@v.hix.fi>2024-02-18 12:38:25 +0200
committerAineopintojen-harjoitustyo-Algoritmit-j <github-hy-tiralabra@v.hix.fi>2024-02-18 12:38:25 +0200
commit88b9ac285490a0d9da0342a8c9c61ed8d9e93919 (patch)
tree8c0296466cf59ae9bf6f4b4b411bca58b7adbce4
parentcaeed6ca2277be6e34eef48bb55ef0692620ba21 (diff)
bots/bot.py refactor, variable rename
-rw-r--r--src/miinaharava/bots/bot.py17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/miinaharava/bots/bot.py b/src/miinaharava/bots/bot.py
index d61aa56..20dfe5b 100644
--- a/src/miinaharava/bots/bot.py
+++ b/src/miinaharava/bots/bot.py
@@ -86,7 +86,8 @@ class Bot():
tiles.remove(tile)
def remove_mine_tiles(self, tiles):
- """ Poistaa pommit ja pommiksi merkityt joukosta. """
+ """ Poistaa miinat ja miinoiksi merkityt joukosta sekä palauttaa
+ montako poistettiin """
count=0
for tile in list(tiles):
if self.matrix[tile[0]][tile[1]] in (Tile.MINE, Tile.FLAG_MINE):
@@ -104,12 +105,7 @@ class Bot():
def count_unknowns(self, tiles):
""" Laskee laatat jotka on sekä avaamattomia että merkitsemättömiä. """
- count=0
- for tile in list(tiles):
- if not self.known_tile(tile):
- count+=1
- return count
-
+ return sum(not self.known_tile(tile) for tile in tiles)
def get_interesting_tiles(self):
""" Etsii laattojen joukon, jossa jokainen laatta on numerolaatta
@@ -118,10 +114,9 @@ class Bot():
for x in range(self.w):
for y in range(self.h):
if self.number_tile((x,y)):
- n = self.get_neighbours((x,y))
- l = len(n)
- r = self.count_unknowns(n)
- if r in range(1,l-1):
+ neighbours = self.get_neighbours((x,y))
+ unknown_count = self.count_unknowns(neighbours)
+ if unknown_count in range(1,len(neighbours)-1):
tiles.add((x,y))
return tiles