For this Question: You are given a 100*100 chessboard. A knight is placed on cell (i, j). You have to find the number of blocks on the chessboard that the knight can be at in exactly N moves.Input contains three integers i j N.

Constraints 

1 <= i, j <= 100
1 <= N <= 10Output a single integer, the number of blocks on the chessboard that the knight can be at in exactly N moves.sample input 1
1 1 1

sample output 1
2

sample input 2 
50 50 1

sample input 2
8, I have written this Solution Code: def get_next_positions(pos):
	moves = [
		(2,1), (2,-1),(-2,1),(-2,-1),(1,2),(-1,2),(1,-2),(-1,-2)
	]
	i, j = pos
	positions = set()
	for (x, y) in moves:
		pos_x = i + x
		pos_y = j + y
		if(1 <= pos_x) and (pos_x <= 100) and (1 <= pos_y) and (pos_y <= 100):
			positions.add((pos_x, pos_y))
	return positions

i, j, n = [int(x) for x in input().split()]
curr_positions = set([(i, j)])
for i in range(n):
	new_positions = set()
	for pos in curr_positions:
		new_positions |= get_next_positions(pos)
	curr_positions = new_positions
print(len(curr_positions)), In this Programming Language: Python, Now tell me if this Code is compilable or not?