




"""simple docstring"""




import numpy as np
from PIL import Image



def        a__					(							snake_case__			,					snake_case__			,					snake_case__							)		->   np.ndarray:
			lowerCamelCase      =   np.array(snake_case__							)
			if arr.shape[0] != arr.shape[1]:
						raise ValueError("""The input array is not a square matrix"""							)
			lowerCamelCase      =   0
			lowerCamelCase      =   0
			lowerCamelCase      =   0
			lowerCamelCase      =   0

			# compute the shape of the output matrix
			lowerCamelCase      =   (arr.shape[0] - size) // stride + 1
			# initialize the output matrix with zeros of shape maxpool_shape
			lowerCamelCase      =   np.zeros((maxpool_shape, maxpool_shape)							)

			while i < arr.shape[0]:
						if i + size > arr.shape[0]:
									# if the end of the matrix is reached, break
									break
						while j < arr.shape[1]:
									# if the end of the matrix is reached, break
									if j + size > arr.shape[1]:
												break
									# compute the maximum of the pooling matrix
									lowerCamelCase      =   np.max(arr[i : i + size, j : j + size]							)
									# shift the pooling matrix by stride of column pixels
									j += stride
									mat_j += 1

						# shift the pooling matrix by stride of row pixels
						i += stride
						mat_i += 1

						# reset the column index to 0
						lowerCamelCase      =   0
						lowerCamelCase      =   0

			return updated_arr



def        a__					(							snake_case__			,					snake_case__			,					snake_case__							)		->   np.ndarray:
			lowerCamelCase      =   np.array(snake_case__							)
			if arr.shape[0] != arr.shape[1]:
						raise ValueError("""The input array is not a square matrix"""							)
			lowerCamelCase      =   0
			lowerCamelCase      =   0
			lowerCamelCase      =   0
			lowerCamelCase      =   0

			# compute the shape of the output matrix
			lowerCamelCase      =   (arr.shape[0] - size) // stride + 1
			# initialize the output matrix with zeros of shape avgpool_shape
			lowerCamelCase      =   np.zeros((avgpool_shape, avgpool_shape)							)

			while i < arr.shape[0]:
						# if the end of the matrix is reached, break
						if i + size > arr.shape[0]:
									break
						while j < arr.shape[1]:
									# if the end of the matrix is reached, break
									if j + size > arr.shape[1]:
												break
									# compute the average of the pooling matrix
									lowerCamelCase      =   int(np.average(arr[i : i + size, j : j + size]							)							)
									# shift the pooling matrix by stride of column pixels
									j += stride
									mat_j += 1

						# shift the pooling matrix by stride of row pixels
						i += stride
						mat_i += 1
						# reset the column index to 0
						lowerCamelCase      =   0
						lowerCamelCase      =   0

			return updated_arr


# Main Function
if __name__ == "__main__":
					from doctest import testmod

					testmod(name="""avgpooling""", verbose=True)

					# Loading the image
					lowerCAmelCase				:     Any					=				Image.open("""path_to_image""")

					# Converting the image to numpy array and maxpooling, displaying the result
					# Ensure that the image is a square matrix

					Image.fromarray(maxpooling(np.array(image), size=3, stride=2)).show()

					# Converting the image to numpy array and averagepooling, displaying the result
					# Ensure that the image is a square matrix

					Image.fromarray(avgpooling(np.array(image), size=3, stride=2)).show()









"""simple docstring"""




def        a__					(							)		->   int:
			return 1



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else two_pence(x - 2							) + one_pence()



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else five_pence(x - 5							) + two_pence(snake_case__							)



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else ten_pence(x - 10							) + five_pence(snake_case__							)



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else twenty_pence(x - 20							) + ten_pence(snake_case__							)



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else fifty_pence(x - 50							) + twenty_pence(snake_case__							)



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else one_pound(x - 1_00							) + fifty_pence(snake_case__							)



def        a__					(							snake_case__							)		->   int:
			return 0 if x < 0 else two_pound(x - 2_00							) + one_pound(snake_case__							)



def        a__					(							snake_case__ = 2_00							)		->   int:
			return two_pound(snake_case__							)


if __name__ == "__main__":
					print(solution(int(input().strip())))



