Assentos do show

Crie um método que determine se todos os assentos conseguem "ver" a frente do palco. As fileiras estão ordenadas da frente do palco para o fundo. Um assento só consegue ver quando sua altura é estritamente maior que a do assento diretamente à sua frente na mesma coluna.

Todos conseguem ver o palco nesta disposição:

// FRENTE DO PALCO
new int[][]
{
  { 1, 2, 3, 2, 1, 1 },
  { 2, 4, 4, 3, 2, 2 },
  { 5, 5, 5, 5, 4, 4 },
  { 6, 6, 7, 6, 5, 5 }
}

// Na primeira coluna, 6 > 5 > 2 > 1, portanto todos os assentos conseguem ver.
// Em outra coluna, 6 > 5 > 4 > 2, e assim por diante.

Nem todos conseguem ver nesta disposição:

// FRENTE DO PALCO
new int[][]
{
  { 1, 2, 3, 2, 1, 1 },
  { 2, 4, 4, 3, 2, 2 },
  { 5, 5, 5, 10, 4, 4 },
  { 6, 6, 7, 6, 5, 5 }
}

// A altura 10 está diretamente à frente de 6 e bloqueia sua visão.

Retorne true somente se todos os assentos conseguirem ver o palco. Retorne false se houver pelo menos uma visão bloqueada.

Exemplos

Program.canSeeStage(new int[][]
{
  { 1, 2, 3 },
  { 4, 5, 6 },
  { 7, 8, 9 }
}) ➞ true

Program.canSeeStage(new int[][]
{
  { 0, 0, 0 },
  { 1, 1, 1 },
  { 2, 2, 2 }
}) ➞ true

Program.canSeeStage(new int[][]
{
  { 2, 0, 0 },
  { 1, 1, 1 },
  { 2, 2, 2 }
}) ➞ false

Program.canSeeStage(new int[][]
{
  { 1, 0, 0 },
  { 1, 1, 1 },
  { 2, 2, 2 }
}) ➞ false

Observações

  • As alturas devem aumentar de forma estrita de cada assento da frente para o assento diretamente atrás dele; alturas iguais bloqueiam a visão.
  • Todas as alturas são números inteiros maiores ou iguais a zero.