Escrito por João Pedro Castro
Conhecimentos Prévios Necessários:
Para processar cada comando precisamos saber somente dois coisas a cada momento: as coordenadas atuais (chame de
) e a direção atual
, que vamos atribuir como um inteiro
até
, sendo
norte,
leste,
sul e
oeste (começando do norte na ordem horária). Agora fica fácil, se for um comando de girar fale que
; explicando,
é a quantidade de posições horárias que você vai pular, e colocamos
para o problema de você estar na posição
e pular
, e acabar na posição
(que não existe) ao invés da
(ou seja, é cíclico). Agora, caso seja um de mover pontos, é só pensar um pouco para ver onde
move em cada uma das
direções (só colocar 4 ifs) e atualizar
.
