Número de caminos entre puntos

Este desafío consiste en encontrar y contar el número de caminos entre puntos en una cuadrícula rectilínea. Se proporciona un punto de partida (x, y) con coordenadas enteras no negativas. Solo puedes moverte horizontal y verticalmente por la cuadrícula. Por lo tanto, desde (x, y) puedes moverte a (x+1, y), (x-1, y), (x, y+1) o (x, y-1). Tu objetivo es regresar al origen (0, 0) de tal manera que nunca aumentes la distancia al origen. La distancia se cuenta como el número mínimo total de pasos verticales y horizontales necesarios para llegar al origen.

Crea una función que lea una ubicación inicial, (x, y), y devuelva el número total de caminos distintos de regreso al origen. Dos caminos son diferentes si hay al menos un paso del camino que es diferente, aunque la mayoría de los pasos sean iguales.

Ejemplos

paths(0, 0) ➞ 1

paths(2, 1) ➞ 3

paths(2, 2) ➞ 6

Notas

  • Esta función se puede escribir fácilmente usando recursión. Se recomienda ENCARECIDAMENTE (aunque no es necesario) que uses algún tipo de recursión en tu solución.
  • El tipo de retorno de esta función es un entero positivo.
  • x e y siempre serán enteros mayores o iguales a 0.