Em um jogo de RisiKo! (a versão italiana do popular jogo de tabuleiro Risk!), os jogadores lançam dados de seis lados para conquistar territórios ao redor de um mapa-múndi.
Quando dois jogadores disputam um território, há uma batalha e eles lançam de 1 a 3 dados, sendo cada dado um exército enviado para lutar. Para estabelecer quem perde exércitos após a batalha, os dados são comparados começando pelo maior valor e prosseguindo com as comparações em ordem decrescente (eliminando os dados excedentes se a quantidade de dados lançados pelos dois jogadores for diferente).
Quando as rolagens são comparadas, em cada comparação o dado do jogador atacante deve ter um valor maior que o dado do defensor para vencer a luta. Em caso de empate, o defensor vence a luta individual. O perdedor perde apenas 1 exército por comparação.
Dados dois arrays attacker (rolagens do atacante) e defender (rolagens do defensor), implemente uma função que retorne a quantidade de exércitos perdidos pelo defensor como um número inteiro.
risiko([3, 6, 4], [2, 5, 3]) ➞ 3
# Comparison 1:
# ATT(6) vs. DEF(5): DEF loses an army
# Comparison 2:
# ATT(4) vs. DEF(3): DEF loses an army
# Comparison 3:
# ATT(3) vs. DEF(2): DEF loses an army
risiko([3, 6], [6, 4, 4]) ➞ 0
# Comparison 1:
# ATT(6) vs. DEF(6): ATT loses an army
# Comparison 2:
# ATT(3) vs. DEF(4): ATT loses an army
risiko([3, 1], [1]) ➞ 1
# Comparison 1:
# ATT(3) vs. DEF(1): DEF loses an army