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

1.6 KiB

id challengeType title videoUrl localeTitle
5900f4481000cf542c50ff5a 5 Problem 219: Skew-cost coding Problema 219: codificação de custo skew

Description

Sejam A e B cadeias de bits (sequências de 0 e 1). Se A é igual ao comprimento mais à esquerda (A) de B, então A é dito ser um prefixo B. Por exemplo, 00110 é um prefixo de 001101001, mas não de 00111 ou 100110.

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

0000, 0001, 001, 01, 10, 11

Agora suponha que custa um centavo para transmitir um bit '0', mas quatro centavos para transmitir um '1'. Em seguida, o custo total do código sem prefixo mostrado acima é de 35 pence, que é o mais barato possível para o esquema de preços distorcido em questão. Em resumo, escrevemos Cost (6) = 35.

O que é custo (109)?

Instructions

Tests

tests:
  - text: <code>euler219()</code> deve retornar 64564225042.
    testString: 'assert.strictEqual(euler219(), 64564225042, "<code>euler219()</code> should return 64564225042.");'

Challenge Seed

function euler219() {
  // Good luck!
  return true;
}

euler219();

Solution

// solution required