Division and Recursion--fill chess board
import unittest
title=0
def fill_chess_board(chess_board, chess_board_row,chess_board_column,
filled_block_row, filled_block_column, size):
global title
if (size == 1):
return
size = size//2
title = title+1
t = title
print (size)
if (filled_block_row < chess_board_row + size and filled_block_column < chess_board_column + size):
fill_chess_board(chess_board, chess_board_row, chess_board_column, filled_block_row, filled_block_column, size)
else:
chess_board[chess_board_row + size - 1][chess_board_column + size - 1] = t
fill_chess_board(chess_board, chess_board_row, chess_board_column, chess_board_row + size - 1, chess_board_column + size - 1, size)
if (filled_block_row < chess_board_row + size and filled_block_column >= chess_board_column + size):
fill_chess_board(chess_board, chess_board_row, chess_board_column + size, filled_block_row, filled_block_column, size)
else:
chess_board[chess_board_row + size-1][chess_board_column+size] = t
fill_chess_board(chess_board, chess_board_row, chess_board_column+size, chess_board_row+size-1, chess_board_column+size, size)
if (filled_block_row >= chess_board_row + size and filled_block_column < chess_board_column + size):
fill_chess_board(chess_board, chess_board_row+size, chess_board_column , filled_block_row, filled_block_column, size)
else:
chess_board[chess_board_row + size][chess_board_column+size-1] = t
fill_chess_board(chess_board, chess_board_row+size, chess_board_column, chess_board_row+size, chess_board_column+size-1, size)
if (filled_block_row >= chess_board_row + size and filled_block_column >= chess_board_column + size):
fill_chess_board(chess_board, chess_board_row+size, chess_board_column+size , filled_block_row, filled_block_column, size)
else:
chess_board[chess_board_row + size][chess_board_column+size] = t
fill_chess_board(chess_board, chess_board_row+size, chess_board_column+size, chess_board_row+size, chess_board_column+size, size)
chess_board = [([0]*4) for i in range(4)]
chess_board[2][3]='#'
fill_chess_board(chess_board, 0,0,2,3,4)
for i in chess_board:
print (i)

浙公网安备 33010602011771号