Elenchi ciclicamente auto-descrittivi
Un elenco di numeri interi positivi si auto-descrive ciclicamente , se valgono le seguenti condizioni.
- è non vuoto.
- Il primo e l'ultimo elemento di sono diversi.
- Se si divide in corse di elementi uguali, l'elemento di ciascuna corsa equivale alla lunghezza della corsa successiva e l'elemento dell'ultima corsa equivale alla lunghezza della prima corsa.
Ad esempio, considera . È non vuoto e il primo e l'ultimo elemento sono diversi. Quando lo dividiamo in sequenze, otteniamo .
- La prima corsa è una corsa di s e la lunghezza della corsa successiva, , è .
- La seconda corsa è una corsa di secondi e la lunghezza della corsa successiva, , è .
- La terza corsa è una corsa di secondi e la lunghezza della corsa successiva, , è .
- La quarta corsa è una corsa di s e la lunghezza della corsa successiva, , è .
- Infine, l'ultima corsa è una corsa di secondi e la lunghezza della prima corsa, , è .
Ciò significa che è un elenco ciclicamente auto-descrittivo.
Per un non esempio, l'elenco non è auto-descrittivo ciclicamente, poiché una corsa di s è seguita da una corsa di lunghezza . Anche la lista non è auto-descrittiva ciclicamente, poiché l'ultima corsa è una corsa di s, ma la prima corsa ha lunghezza .
L'obiettivo
In questa sfida, il tuo input è un numero intero . Il risultato deve essere il numero di elenchi ciclicamente auto-descrittivi la cui somma è uguale a . Ad esempio, dovrebbe risultare in , poiché gli elenchi ciclicamente autodescritti la cui somma è sono , , e . Vince il conteggio di byte più basso e si applicano altre regole standard per il golf del codice .
Ecco i valori di uscita corretti per gli ingressi da a :
1 -> 0
2 -> 0
3 -> 0
4 -> 2
5 -> 0
6 -> 2
7 -> 0
8 -> 4
9 -> 0
10 -> 6
11 -> 6
12 -> 12
13 -> 0
14 -> 22
15 -> 10
16 -> 32
17 -> 16
18 -> 56
19 -> 30
20 -> 96
21 -> 56
22 -> 158
23 -> 112
24 -> 282
25 -> 198
26 -> 464
27 -> 364
28 -> 814
29 -> 644
30 -> 1382
31 -> 1192
32 -> 2368
33 -> 2080
34 -> 4078
35 -> 3844
36 -> 7036
37 -> 6694
38 -> 12136
39 -> 12070
40 -> 20940
41 -> 21362
42 -> 36278
43 -> 37892
44 -> 62634
45 -> 67154
46 -> 108678
47 -> 118866
48 -> 188280
49 -> 209784
50 -> 326878
n,1,...,1
, e ogni numero dispari maggiore di 13 può essere ottenuto concatenando 3,2,2,2,1,1
un numero pari. La prova che 13 è impossibile è lasciata come esercizio per il lettore.