Hoje, enquanto escrevo isso, é 31 de março. Nos EUA, é isso 3/31
. Eu estava brincando com 331
um número para chegar a um desafio e descobri que seus resíduos (módulos pequenos) são palindrômicos. 331%2=1, 331%3=1, 331%4=3, 331%5=1, 331%6=1
( 11311
)
Seu desafio aqui é que, quando dado um número inteiro n > 2
, produz os primeiros n
números positivos que possuem resíduo palíndrico quando tomados módulo [2,n]
.
Por exemplo, para entrada 7
, a saída deve ser 1, 42, 43, 140, 182, 420, 421
. Aqui está o gráfico explicando por que esse é o caso:
mod
num | 2 3 4 5 6 7
-----------------
1 | 1 1 1 1 1 1
42 | 0 0 2 2 0 0
43 | 1 1 3 3 1 1
140 | 0 2 0 0 2 0
182 | 0 2 2 2 2 0
420 | 0 0 0 0 0 0
421 | 1 1 1 1 1 1
Entrada
Um número inteiro positivo único n
com n > 2
em qualquer formato conveniente .
Saída
A matriz / lista resultante dos primeiros n
resíduos palíndricos, conforme descrito acima. Mais uma vez, em qualquer formato adequado.
Regras
- Para
n > 10
, suponha que a lista de resíduos seja achatada antes de verificar se é um palíndromo. Ou seja,[1, 10, 11]
é palindrômico, mas[1, 10, 1]
não é. - 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.
- Se possível, inclua um link para um ambiente de teste on-line para que outras pessoas possam experimentar seu código!
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
Exemplos
[input]
[output]
3
[1, 6, 7]
4
[1, 4, 5, 8]
5
[1, 50, 60, 61, 110]
6
[1, 30, 31, 60, 61, 90]
7
[1, 42, 43, 140, 182, 420, 421]
8
[1, 168, 169, 336, 337, 504, 505, 672]
9
[1, 2520, 2521, 5040, 5041, 7560, 7561, 10080, 10081]
10
[1, 280, 281, 560, 1611, 1890, 1891, 2170, 2171, 2241]
11
[1, 22682, 27720, 27721, 50402, 55440, 55441, 78122, 83160, 83161, 105842]
n
elementos.
[1, 10, 11]
é palindrômico, mas [1, 10, 1]
não é" parece tão matematicamente errado.