Dados inteiros positivos e h produzem w colunas e h linhas de texto, conforme descrito abaixo.
A primeira linha começa com 11 0
s, a segunda linha com 10 1
s, a terceira com nove se 2
assim por diante na décima linha com dois 9
s. Em cada uma dessas dez primeiras linhas, após a execução inicial de dígitos consecutivos, o próximo dígito mais baixo aparece duas vezes antes do segundo dígito mais baixo aparecer duas vezes, com esse padrão repetindo para sempre. Se ocorrer uma sequência de 0
s, os dígitos depois serão sempre 9
s.
As linhas abaixo da décima linha são iguais às linhas imediatamente acima, mas deslocadas para a direita em um. O novo dígito que aparece é o mesmo que o dígito anterior mais à esquerda, se não estiver próximo a outra instância. Caso contrário, é o próximo dígito mais alto (alternando de 9 para 0).
Os primeiros elementos são os seguintes:
00000000000
11111111110
22222222211
33333333221
44444443322
55555544332
66666554433
77776655443
88877665544
99887766554
Aqui está uma imagem com texto colorido para tornar o padrão mais claro.
Se você precisar produzir menos colunas / linhas, basta cortar o texto acima.
Se você precisar produzir mais colunas / linhas do que isso, as escadas existentes deverão ser estendidas. Se mais colunas / linhas adicionar novas escadas de dígitos consecutivos, os dígitos deverão ser escolhidos ciclicamente dos números inteiros. Assim, para a entrada a saída deve ser
000000000009988
111111111100998
222222222110099
333333332211009
444444433221100
555555443322110
666665544332211
777766554433221
888776655443322
998877665544332
099887766554433
009988776655443
100998877665544
Aqui está uma imagem deste texto com cores:
Regras
- A saída pode ser fornecida por qualquer método conveniente .
- Um programa completo ou uma função são aceitáveis. Se uma função, você pode retornar a saída em vez de imprimi-la.
- Você pode retornar uma lista de linhas, se preferir.
- Você pode retornar uma matriz de dígitos 2D ou uma lista de listas de dígitos, se preferir.
- Falhas padrão não permitidas.
O menor código vence.
Casos de teste
1,1
0
3,2
000
111
20,1
00000000000998877665
11,10
00000000000
11111111110
22222222211
33333333221
44444443322
55555544332
66666554433
77776655443
88877665544
99887766554
15,13
000000000009988
111111111100998
222222222110099
333333332211009
444444433221100
555555443322110
666665544332211
777766554433221
888776655443322
998877665544332
099887766554433
009988776655443
100998877665544