freeCodeCamp/curriculum/challenges/portuguese/10-coding-interview-prep/project-euler/problem-219-skew-cost-codin...

1.3 KiB

id title challengeType forumTopicId dashedName
5900f4481000cf542c50ff5a Problema 219: Codificação de custo modificado 5 301861 problem-219-skew-cost-coding

--description--

Considere A e B como sendo strings de bits (sequências de 0s e 1s).

Se A for igual ao bits comprimento (A) mais à esquerda de B, então A é pode ser considerado um prefixo de B.

Por exemplo, 00110 é um prefixo de 001101001, mas não de 00111 ou 100110.

Um código de tamanho n sem prefixo é uma coleção de n strings de bits distintos, de modo que nenhuma string é um prefixo de outra. Por exemplo, este é um código de tamanho 6 sem prefixos:

0000, 0001, 001, 01, 10, 11

Suponhamos agora que custa um centavo transmitir um bit "0", mas quatro centavos transmitir um bit "1". Então, o custo total do código sem o prefixo mostrado acima é de 35 centavos, que é o mais barato possível para o regime de preços modificados em questão. Em resumo, escrevemos Cost(6) = 35.

Qual é o Cost(10^9)?

--hints--

skewCostCoding() deve retornar 64564225042.

assert.strictEqual(skewCostCoding(), 64564225042);

--seed--

--seed-contents--

function skewCostCoding() {

  return true;
}

skewCostCoding();

--solutions--

// solution required