Ruby (40 caracteres)
Interprete una cadena de letras az como un número en la base 26, con a = 1, b = 2, ..., z = 26.
Entonces "contraseña" puede considerarse como el número N =
16*(26**7) +
1*(26**6) +
19*(26**5) +
19*(26**4) +
23*(26**3) +
15*(26**2) +
18*(26**1) +
4*(26**0)
Si dejamos s = "a"(es decir: 1) y hacemos llamadas (N-1) a s.succ!, s será "password"(N). En otras palabras, N = 1 + (N-1).
Para un ejemplo que se ejecutará más rápidamente, para demostrar que el cálculo de N es correcto, considere "pass"como el objetivo, donde N es
16*(26**3) +
1*(26**2) +
19*(26**1) +
19*(26**0)
y
s = "a"
(N-1).times { s.succ! }
puts s #== "pass"
Como también queremos imprimir "a", necesitamos
s = "`"
N.times { print(s.succ! + " ") }
Así que de vuelta a la "contraseña" completa. N = 129052722140, dejando:
s=?`;0x1e0c2443dc.times{$><<s.succ!+" "}
Busqué una forma más compacta de, 129052722140 == 0x1e0c2443dbpero no pude encontrar una.
(Actualizado para corregir la falta de impresión "a", gracias a Cary).