È molto difficile ricordare la mia password, quindi ho trovato un modo per generare una password.
Il modo in cui generi la mia password proviene da una parola o una frase, seguendo questi passaggi:
Inizia da sinistra a destra
Trova il conteggio di ogni lettera
Metti la lettera con il suo conteggio in un ordine
Le lettere con ripetizione più alta saranno alla fine
Le lettere con la stessa ripetizione verranno ordinate in ordine alfabetico
I numeri e le lettere speciali verranno ignorati, compresi gli spazi bianchi (ad es. 9, 4, @, (, *, ecc. Vengono ignorati)
Le lettere di gruppo ignorano il caso. Nell'output, utilizzare il caso dell'ultima occorrenza nell'input
- Il conteggio della lettera può essere qualsiasi numero, ad esempio 5H17M345K
- Se l'input è costituito da tutti i numeri o lettere speciali, l'output sarà una stringa vuota, ad esempio Input "12 $ * 34 ^!" quindi emettere ""
- quando l'ordine per la stessa occorrenza in ordine alfabetico, il caso non ha importanza, ad es. 1a1B1c
Esempio:
Input: Kitkat Tango
(2k / 1i / 3T / 2a / 1n / 1g / 1o)
Output: 1g1i1n1o2a2k3T
Un altro esempio:
Input: Database Partitions Task
(1D / 5a / 4T / 1b / 3s / 1e / 1P / 1r / 2i / 1o / 1n / 3s / 1k)
Output: 1b1D1e1k1n1o1P1r2i3s4T5a
Nota: le lettere con 1 ripetizione sono all'inizio in ordine alfabetico, quindi le lettere con più ripetizioni
Questo è code-golf , vince il codice più corto.
1.
aggiungere almeno 1 caso di test che includa più di 9 occorrenze di una o più lettere, 2.
specificare che l'output deve essere una stringa (anche se consiglio vivamente di non essere così rigoroso; non aggiunge nulla alla sfida ), 3.
specifica che dobbiamo essere in grado di gestire input che non contengono lettere e 4.
chiarire se è necessario gestire una stringa vuota come input.
1
. Inoltre, in futuro potresti prendere in considerazione l'utilizzo del nostro Sandbox per provare a risolvere problemi come questi prima di pubblicare una sfida.