Ispirato da questo post migrato mal ricevuto .
Il responsabile della sicurezza della tua azienda è preoccupato per il tuo sistema di generazione del PIN dopo che gli è stato dato 12345
. Inoltre non ha davvero apprezzato la battuta di Spaceballs che hai fatto a sue spese, quindi sei stato delegato a riscrivere il generatore di PIN. Dal momento che deve adattarsi a un hardware speciale, è necessario renderlo il più piccolo possibile.
Il tuo compito
- Si accettano due input: il numero di PIN e la dimensione del PIN in cifre.
- Generare il numero specificato di PIN della dimensione specificata in modo casuale e stamparlo.
- È possibile stampare tutti i PIN validi delle dimensioni, anche se non sono uniformemente probabili.
Tuttavia, ci sono alcune restrizioni sui PIN: ecco quelli non validi:
- Se tutte le coppie hanno la stessa cifra:
114422
(Nota: questo includerà ovviamente tutti i PIN della stessa cifra). - PIN Sempre più lineari (mod 10):
246802
. - Tutti i gruppi di 3 sono linee fisiche sulla tastiera di
1 2 3;4 5 6;7 8 9;bksp 0 enter;
:147369
. - Il PIN può essere completamente suddiviso in gruppi dalla regola 1 e dalla regola 3.
- Se tutte le coppie hanno la stessa cifra:
- Questo è code-golf , quindi vince il codice più breve in byte !
123
, ma 55432
andrebbe bene.
55123
)?