Dato un numero intero positivo n, progettare un goniometro con il minor numero di segni che consente di misurare tutti gli angoli che sono un multiplo integrale di 2π/n(ciascuno in una singola misura).
Dettagli
Come output, è possibile generare un elenco di numeri interi nell'intervallo 0a n-1(o 1a n) che rappresentano la posizione di ciascun segno. In alternativa è possibile generare una stringa / elenco di lunghezza ncon #a nella posizione di ciascun segno e un _(trattino basso) dove non ce n'è. (O due caratteri diversi, se più conveniente.)
Esempio: per n = 5avere bisogno di esattamente 3 segni per poter misurare tutti gli angoli 2π/5, 4π/5, 6π/5, 8π/5, 2πimpostando (per esempio) un segno su 0, un segno su 2π/5e un segno su 6π/5. Possiamo codificarlo come un elenco [0,1,3]o come una stringa ##_#_.

Esempi
Si noti che le uscite non sono necessariamente uniche.
n: output:
1 [0]
2 [0,1]
3 [0,1]
4 [0,1,2]
5 [0,1,2]
6 [0,1,3]
7 [0,1,3]
8 [0,1,2,4]
9 [0,1,3,4]
10 [0,1,3,6]
11 [0,1,3,8]
20 [0,1,2,3,6,10]
PS: Questo è simile al problema dei righelli sparsi , ma invece di una scala lineare (con due estremità) consideriamo una scala circolare (angolare).
PPS: questo script dovrebbe calcolare un esempio di un insieme di segni per ciascuno n. Provalo online!
PPPS: Come sottolineato da @ngn, questo problema equivale a trovare una base di differenza minima di un gruppo di ordini ciclico n. Gli ordini minimi sono elencati in http://oeis.org/A283297 e alcuni limiti teorici si trovano in https://arxiv.org/pdf/1702.02631.pdf