Um amigo possui um cartão complementar em seu computador que gera um número perfeitamente aleatório de 1 a 5, inclusive. Infelizmente, eles derramaram cola de alguma forma, e agora gera apenas 2 para todos os números de 1 a 4. Felizmente, a aleatoriedade é preservada, mas 2 tem uma probabilidade de 80% e 5 tem uma probabilidade de 20%, e não há 1, 3 ou 4 gerados. Usando essa fonte aleatória (chame-a BrokenRand()
ou algo similar), escreva um gerador de números aleatórios que produza números de 1 a 5, cada um com uma probabilidade igual de 20% com a mesma aleatoriedade perfeita que a fonte original.
O programa mais curto vence. Pontos de bônus concedidos pelo número mínimo de chamadas a serem BrokenRand
prestadas imparcialmente por uma consultoria de atendimento ao cliente selecionada demograficamente, discriminada por idade e sexo - ou seja, eu.