Esta pergunta é semelhante à maior praça de uma grade .
Desafio
Dada uma matriz 1
e 0
em um formato de cadeia "xxxx,xxxxx,xxxx,xx.."
ou formato de matriz ["xxxx","xxxx","xxxx",...]
, você criará uma função que determina a área da maior submatriz quadrada que contém todas 1
.
Uma submatriz quadrada é uma de largura e altura iguais, e sua função deve retornar a área da maior submatriz que contém apenas 1
.
Por exemplo:
Dado "10100,10111,11111,10010"
, isso se parece com a seguinte matriz:
1 0 1 0 0
1 0 1 1 1
1 1 1 1 1
1 0 0 1 0
Você pode ver o negrito 1
criar a maior submatriz quadrada de tamanho 2x2, portanto seu programa deve retornar a área que é 4.
Regras
- A submatriz deve ser de largura e altura iguais
- A submatriz deve conter apenas valores
1
- Sua função deve retornar a área da maior submatriz
- Caso nenhuma submatriz seja encontrada, retorne
1
- Você pode calcular a área da submatriz contando o número de
1
na submatriz
Casos de teste
Entrada: "10100,10111,11111,10010"
Saída: 4
Entrada: "0111,1111,1111,1111"
Saída: 9
Saída de entrada "0111,1101,0111"
: 1
Isso é código-golfe , então a resposta mais curta em bytes vence.