Dato un numero naturale, n
scrivere un programma o una funzione per ottenere un elenco di tutte le possibili due moltiplicazioni di fattori che possono essere utilizzate per ottenere n
. Per capire meglio cosa si pretende, puoi visitare http://factornumber.com/?page=16777216 per vedere quando n
viene visualizzato 16777216
il seguente elenco:
2 × 8388608
4 × 4194304
8 × 2097152
16 × 1048576
32 × 524288
64 × 262144
128 × 131072
256 × 65536
512 × 32768
1024 × 16384
2048 × 8192
4096 × 4096
Non c'è bisogno di stampare cose come qui. Il requisito è che ogni voce (coppia di fattori) sia ben distinta l'una dall'altra e all'interno di ciascuna coppia, anche il primo fattore sia ben distinto dall'altro. Se si sceglie di restituire un elenco / array, l'elemento inside può essere un elenco / array con due elementi o una struttura della propria lingua che supporta una coppia di cose come C ++ std::pair
.
Non stampare la moltiplicazione per 1 voce, né ripetere le voci con il primo fattore commutato dal secondo, poiché sono piuttosto inutili.
Nessun vincitore; sarà un codice golf per lingua base.
30
?