Uno (Parte 1)
Esta questão é 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 que está virada para cima. Retorne true se o jogador puder fazer uma jogada, ou false se precisar comprar uma carta do baralho.
Um jogador pode fazer uma jogada se uma destas condições for atendida:
- Ele tem uma carta da mesma cor que a carta virada para cima.
- Ele tem uma carta com o mesmo número que a carta virada para cima.
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).
- Não há cartas especiais nem curingas neste baralho.