Aranha🕷️vs. 🦟 Mosca

Published by Mubashir Hassan in

Uma teia de aranha é definida por anéis numerados de 0 a 4 a partir do centro e raios rotulados no sentido horário a partir do topo como A-H.

Crie uma função que receba as coordenadas de spider e fly e retorne o caminho mais curto para que a aranha chegue até a mosca.

Vale notar que o caminho mais curto deve ser calculado "geometricamente", e não contando o número de pontos pelos quais o caminho passa. Podemos estabelecer o seguinte:

  • O ângulo entre cada par de raios é o mesmo (45 graus).
  • A distância entre cada par de anéis é sempre a mesma (vamos chamar de "x").

Mubashir

Na imagem acima, as coordenadas de spider são "H3" e as coordenadas de fly são "E2". A aranha seguirá o caminho mais curto "H3-H2-H1-A0-E1-E2" para chegar até a mosca.

Exemplos

spiderVsFly("H3", "E2") ➞ "H3-H2-H1-A0-E1-E2"

spiderVsFly("A4", "B2") ➞ "A4-A3-A2-B2"

spiderVsFly("A4", "C2") ➞ "A4-A3-A2-B2-C2"

Notas

O centro da teia sempre será A0.