Sua tarefa é simples: diga-me quem vence a batalha das letras.
As tropas
Existem três "tropas" diferentes nesta batalha, resumidas por esta tabela.
name | health | damage
A 25 25
B 100 5
C 10 50
Você pode usar três caracteres únicos para representar as tropas, mas deve especificar se não são essas letras.
A batalha
Suponha que tenhamos uma amostra de batalha:
ABC # army 1
CBA # army 2
Cada exército dispara repetidamente na unidade mais à esquerda, até que esteja morta; então eles se movem para a tropa à direita e repetem. Portanto, o exército 2 ataca A
no exército 1 até que A
esteja morto, então vá para B
, então C
. O Exército 1 ataca C
primeiro, então B
, então A
. Suponha que os exércitos atacem ao mesmo tempo e, assim, as tropas sempre dispararão se estiverem vivas antes da rodada e possam se matar ao mesmo tempo. Eles disparam em ordem da esquerda para a direita.
A batalha seria assim:
ABC
CBA
BC # A (25 hp) killed by C (-50 hp), B (100 hp) attacked by B (-5 hp) and A (-25 hp), has 70 hp
BA # C (10 hp) killed by A (-25 hp), B (100 hp) attacked by B (-5 hp) and C (-50 hp), has 45 hp
BC # B (70 hp) attacked by B (-5 hp) and A (-25 hp), has 40 hp
A # B (45 hp) killed by B (-5 hp) and C (-50 hp)
BC # B (40 hp) attacked by A (-25 hp), has 15 health
# A (25 hp) killed by B (-5 hp) and C (-50 hp), army 2 dead
Portanto, o exército 1 vence a batalha!
Entrada
Duas cordas, a primeira representando o exército 1 e o segundo exército 2. Elas não são necessariamente do mesmo tamanho (porque quem disse que seria uma luta justa?)
Resultado
Quaisquer três valores constantes únicos para representar o exército 1 vencendo, o exército 2 vencendo ou o improvável evento de empate. Sim, é possível que as últimas tropas se matem, terminando em empate.
Batalhas
ABC
CBA
Army 1
CCCCC
CCCCC
Tie
CABCAB
ABBABBA
Army 2
Aplicam-se brechas padrão . Você deve enviar um programa completo.
Este é o código-golfe , a solução mais curta vence.
A
batidas B
e C
gravatas B
e A
gravatas C
. Alterar um dos A
valores de para 20
torná-lo empate B
.