Segurança de Senhas: O número de combinações é C(n)=2^{n}. Determine o número de caracteres n necessário para que C(n) seja pelo menos 1.048.576.

Passo 1

O enunciado dá a fórmula do número de combinações C(n)=2^{n} e pede: determinar o número de caracteres n necessário para que C(n) seja pelo menos 1{,}048{,}576.
Ou seja, queremos o menor inteiro n tal que
2^{n}\ge 1{,}048{,}576.

Passo 2

Vou explicar duas maneiras naturais de atacar essa desigualdade (escolha a que achar mais intuitiva): (A) reconhecer potências de 2 conhecidas; (B) usar logaritmo. Primeiro, uma observação importante sobre a função n\mapsto 2^{n}: ela é crescente (ou seja, se n_1<n_2 então 2^{n_1}<2^{n_2}). Isso significa que, se acharmos um n com 2^{n}=1{,}048{,}576, esse n é exatamente o menor que satisfaz a desigualdade.

Passo 3

Método A — usar potências conhecidas. É frequente lembrar que
2^{10}=1024.
Então
2^{20}=(2^{10})^{2}=1024^{2}.
Agora calculamos 1024^{2} passo a passo para ver que dá exatamente o número pedido:
1024\times1000=1{,}024{,}000,
1024\times24=24{,}576,
somando,
1024^{2}=1{,}024{,}000+24{,}576=1{,}048{,}576.
Portanto
2^{20}=1{,}048{,}576.

Passo 4

Como 2^{n} é crescente, e já encontramos que 2^{20}=1{,}048{,}576, o menor inteiro n que satisfaz 2^{n}\ge 1{,}048{,}576 é n=20.
Observação extra (método B rapido): aplicando logaritmo base 2 à desigualdade obteríamos n\ge \log_{2}(1{,}048{,}576). Como \log_{2}(1{,}048{,}576)=20, chega-se à mesma conclusão; se o lado direito não fosse potência exata de 2, tomar-se-ia o teto \lceil\cdot\rceil para obter o menor inteiro.

Resposta

n=20

Exercícios relacionados