88 lines
No EOL
4.3 KiB
Python
88 lines
No EOL
4.3 KiB
Python
__author__ = 'gaugendre'
|
|
|
|
from grid import Grid
|
|
# def solve(grid):
|
|
# y = 0
|
|
# while y < len(grid):
|
|
# x = 0
|
|
# while x < len(grid[0]):
|
|
# if grid[x][y] == ' ':
|
|
# v_prev_x, v_prev_y = prev_vert(x, y)
|
|
# v_p_prev_x, v_p_prev_y = prev_vert(v_prev_x, v_prev_y)
|
|
# v_next_x, v_next_y = next_vert(x, y, len(grid))
|
|
# v_n_next_x, v_n_next_y = next_vert(v_next_x, v_next_y,
|
|
# len(grid))
|
|
#
|
|
# h_prev_x, h_prev_y = prev_horiz(x, y)
|
|
# h_p_prev_x, h_p_prev_y = prev_horiz(h_prev_x, h_prev_y)
|
|
# h_next_x, h_next_y = next_horiz(x, y, len(grid[0]))
|
|
# h_n_next_x, h_n_next_y = next_horiz(h_next_x, h_next_y,
|
|
# len(grid[0]))
|
|
#
|
|
# be_blue = (exists(v_prev_x, v_prev_y) and
|
|
# exists(v_p_prev_x, v_p_prev_y) and
|
|
# grid[v_prev_x][v_prev_y] == 'R' and
|
|
# grid[v_p_prev_x][v_p_prev_y] == 'R') or \
|
|
# (exists(v_next_x, v_next_y) and
|
|
# exists(v_n_next_x, v_n_next_y) and
|
|
# grid[v_next_x][v_next_y] == 'R' and
|
|
# grid[v_n_next_x][v_n_next_y] == 'R') or \
|
|
# (exists(h_prev_x, h_prev_y) and
|
|
# exists(h_p_prev_x, h_p_prev_y) and
|
|
# grid[h_prev_x][h_prev_y] == 'R' and
|
|
# grid[h_p_prev_x][h_p_prev_y] == 'R') or \
|
|
# (exists(h_next_x, h_next_y) and
|
|
# exists(h_n_next_y, h_n_next_y) and
|
|
# grid[h_next_x][h_next_y] == 'R' and
|
|
# grid[h_n_next_x][h_n_next_y] == 'R') or \
|
|
# (exists(h_prev_x, h_prev_y) and
|
|
# exists(h_next_x, h_next_y) and
|
|
# grid[h_prev_x][h_prev_y] == 'R' and
|
|
# grid[h_next_x][h_next_y] == 'R') or \
|
|
# (exists(v_prev_x, v_prev_y) and
|
|
# exists(v_next_x, v_next_y) and
|
|
# grid[v_prev_x][v_prev_y] == 'R' and
|
|
# grid[v_next_x][v_next_y] == 'R')
|
|
#
|
|
# be_red = (v_prev_x >= 0 and v_prev_y >= 0 and
|
|
# v_p_prev_x >= 0 and v_p_prev_y >= 0 and
|
|
# grid[v_prev_x][v_prev_y] == 'B' and
|
|
# grid[v_p_prev_x][v_p_prev_y] == 'B') or \
|
|
# (v_next_x >= 0 and v_next_y >= 0 and
|
|
# v_n_next_x >= 0 and v_n_next_y >= 0 and
|
|
# grid[v_next_x][v_next_y] == 'B' and
|
|
# grid[v_n_next_x][v_n_next_y] == 'B') or \
|
|
# (h_prev_x >= 0 and h_prev_y >= 0 and
|
|
# h_p_prev_x >= 0 and h_p_prev_y >= 0 and
|
|
# grid[h_prev_x][h_prev_y] == 'B' and
|
|
# grid[h_p_prev_x][h_p_prev_y] == 'B') or \
|
|
# (h_next_x >= 0 and h_next_y >= 0 and
|
|
# h_n_next_y >= 0 and h_n_next_y >= 0 and
|
|
# grid[h_next_x][h_next_y] == 'B' and
|
|
# grid[h_n_next_x][h_n_next_y] == 'B') or \
|
|
# (exists(h_prev_x, h_prev_y) and
|
|
# exists(h_next_x, h_next_y) and
|
|
# grid[h_prev_x][h_prev_y] == 'B' and
|
|
# grid[h_next_x][h_next_y] == 'B') or \
|
|
# (exists(v_prev_x, v_prev_y) and
|
|
# exists(v_next_x, v_next_y) and
|
|
# grid[v_prev_x][v_prev_y] == 'B' and
|
|
# grid[v_next_x][v_next_y] == 'B')
|
|
#
|
|
# if be_blue:
|
|
# grid[x][y] = 'B'
|
|
# elif be_red:
|
|
# grid[x][y] = 'R'
|
|
# x += 1
|
|
# y += 1
|
|
|
|
|
|
if __name__ == "__main__":
|
|
array = [['B', ' ', ' ', ' '],
|
|
['B', 'B', ' ', ' '],
|
|
[' ', ' ', ' ', ' '],
|
|
[' ', 'B', ' ', 'B']]
|
|
grid = Grid(len(array), array)
|
|
print(grid)
|
|
grid.solve()
|
|
print(grid) |