Uno (Parte 1)
Esta questão foi inspirada no popular jogo de cartas Uno.
Complete o método Program.canPlay. Ele recebe (1) a mão atual de um jogador e (2) a carta face, que está virada para cima. Retorne true se o jogador puder jogar uma carta ou false se precisar comprar uma carta do baralho.
Um jogador pode jogar uma carta se uma destas condições for atendida:
- Ele tem uma carta da mesma cor que a carta virada para cima (face).
- Ele tem uma carta com o mesmo número que a carta virada para cima (face).
Program.canPlay(new String[] { "yellow 3", "yellow 7", "blue 8", "red 9", "red 2" }, "red 1") ➞ true
// A mão contém cartas vermelhas.
Program.canPlay(new String[] { "yellow 3", "yellow 7" }, "blue 7") ➞ true
// A mão contém um 7.Exemplos
Program.canPlay(new String[] { "yellow 3", "yellow 5", "red 8" }, "red 2") ➞ true
Program.canPlay(new String[] { "yellow 3", "yellow 5", "red 8" }, "blue 5") ➞ true
Program.canPlay(new String[] { "yellow 3", "blue 5", "red 8", "red 9" }, "green 4") ➞ false
Program.canPlay(new String[] { "yellow 3", "red 8" }, "green 2") ➞ falseObservações
- Retorne false se o jogador não tiver nenhuma carta (um array vazio).
- Este baralho não contém cartas especiais nem curingas.