De um lado para o outro
Em um jogo de tabuleiro, um jogador pode pegar uma carta com várias setas apontando para a esquerda ou para a direita. A quantidade de setas indica o número de casas que ele deve avançar. O jogador deve se mover para a esquerda ou para a direita, conforme a direção das setas.
Dado um array com as setas das cartas de um jogador, retorne uma única string de pontas de seta que represente o movimento resultante de todas elas.
##// Exemplo explicado
calculateArrowhead([">>", "<<", "<<<"]) ➞ "<<<"
// >> significa avançar 2 casas para a direita
// << significa avançar 2 casas para a esquerda (anulando >>)
// <<< significa avançar mais 3 casas para a esquerda
// no total, o movimento pode ser representado como <<<##// Exemplos
calculateArrowhead([">>>>", "<", "<", "<"]) ➞ ">"
calculateArrowhead([">", "<", ">>", "<", "<<<"]) ➞ "<<"
calculateArrowhead([">>>", "<<<"]) ➞ ""##// Observações Retorne uma string vazia se todas as pontas de seta se anularem.
Exemplo em Java
assertEquals(">", Program.calculateArrowhead(new String[]{">>>>", "<", "<", "<"}));