La casualità è divertente. Le sfide senza senso sono divertenti.
Scrivi una funzione a cui, dato l'input intero n
, verrà emesso un insieme (non ordinato, unico) di n
interi esattamente casuali tra 1
e n^2
(compreso) in modo che la somma di tutti gli interi sia uguale n^2
.
La casualità non deve essere uniforme, a condizione che ogni set valido abbia una probabilità diversa da zero.
Vince la risposta più breve in byte (per ogni lingua).
Esempi
Input (n) = 1, Target (n^2) = 1
Sample of possible outputs:
1
Input = 2, Target = 4
Sample of possible outputs:
3, 1
1, 3
Input = 3, Target = 9
Sample of possible outputs:
6, 1, 2
3, 5, 1
4, 3, 2
Input = 4, Target = 16
Sample of possible outputs:
1, 3, 5, 7
2, 4, 1, 9
8, 3, 1, 4
Input = 5, Target = 25
Sample of possible outputs:
11, 4, 7, 1, 2
2, 3, 1, 11, 8
6, 1, 3, 7, 8
Input = 8, Target = 64
Sample of possible outputs:
10, 3, 9, 7, 6, 19, 8, 2
7, 16, 2, 3, 9, 4, 13, 10
7, 9, 21, 2, 5, 13, 6, 1
Attività bonus: esiste una formula per calcolare il numero di permutazioni valide per un dato n
?