1 00:00:31,587 --> 00:00:36,298 Ethic e Hedge estão no andar térreo de uma imensa torre. 2 00:00:37,278 --> 00:00:41,685 Barreiras de energia os separam do alvo da segunda busca deles: 3 00:00:41,945 --> 00:00:43,945 o "Node da Criação". 4 00:00:52,667 --> 00:00:53,699 Para chegar até ele, 5 00:00:53,699 --> 00:00:57,409 Ethic deve usar três correntes de energia para escalar a torre. 6 00:00:57,409 --> 00:01:03,359 Assim que ela avançar, uma contagem regressiva de 60 segundos terá início. 7 00:01:07,359 --> 00:01:11,659 Atrás da sala, há um reservatório feito de torres invisíveis 8 00:01:11,659 --> 00:01:14,545 que podem reter energia entre elas. 9 00:01:14,735 --> 00:01:18,865 Depois de um minuto, uma cascata de energia descerá, 10 00:01:18,865 --> 00:01:22,355 preenchendo uma unidade de cada vez, com um campo de força 11 00:01:22,355 --> 00:01:25,495 que impede a dissipação da energia para frente ou para trás. 12 00:01:25,495 --> 00:01:27,625 Durante 60 segundos de silêncio, 13 00:01:27,625 --> 00:01:32,723 Ethic e Hedge devem decidir exatamente quantas unidades de energia descerão. 14 00:01:32,723 --> 00:01:34,423 Para cada um dos três desafios, 15 00:01:34,423 --> 00:01:38,088 eles devem escolher a quantidade exata que preencherá o reservatório. 16 00:01:38,088 --> 00:01:41,938 Se fizerem assim, a energia os impulsionará para cima. 17 00:01:41,938 --> 00:01:46,558 Mas se eles usarem a quantidade errada, o "elevador de energia" não funcionará, 18 00:01:46,558 --> 00:01:48,048 fazendo com que eles caiam. 19 00:01:48,048 --> 00:01:51,348 Diagramas nas paredes ilustram alguns exemplos. 20 00:01:51,348 --> 00:01:55,618 Esta configuração capturará exatamente duas unidades de energia. 21 00:01:55,618 --> 00:02:00,735 Esta configuração capturará quatro unidades: três aqui e uma aqui. 22 00:02:00,735 --> 00:02:03,275 E esta aqui também capturará quatro unidades, 23 00:02:03,275 --> 00:02:06,688 porque qualquer energia à direita se dissiparia. 24 00:02:06,688 --> 00:02:08,998 A energia descerá de tal maneira 25 00:02:08,998 --> 00:02:13,538 que somente transbordará se não houver espaço para retê-la. 26 00:02:13,538 --> 00:02:18,865 Hedge pode fazer uma torre de blocos visíveis de cada vez e calcular a altura, 27 00:02:18,865 --> 00:02:22,725 mas não consegue olhar para a estrutura toda de uma só vez. 28 00:02:22,725 --> 00:02:25,670 Como será que Ethic pode programar Hedge para que ele descubra 29 00:02:25,670 --> 00:02:29,340 a quantidade exata de energia que cada reservatório pode reter? 30 00:02:29,340 --> 00:02:33,145 Um pausa agora para que você descubra sozinho. 31 00:02:34,170 --> 00:02:38,700 [Regra 1] [Regra 2] 32 00:02:38,805 --> 00:02:41,635 Eis uma maneira de pensar sobre o que está acontecendo: 33 00:02:41,635 --> 00:02:44,550 cada célula vazia reterá energia 34 00:02:44,550 --> 00:02:48,650 somente se houver uma parede à sua esquerda 35 00:02:48,790 --> 00:02:51,437 e uma parede à direita. 36 00:02:51,517 --> 00:02:56,142 Mas levaria muito tempo para que Hedge verificasse isso para cada célula. 37 00:02:56,322 --> 00:03:01,085 Então, e se ele verificasse uma coluna inteira de blocos de cada vez? 38 00:03:01,185 --> 00:03:04,735 Por exemplo, quantas unidades de energia ela pode armazenar? 39 00:03:05,025 --> 00:03:10,099 [Uma pausa agora para que você descubra sozinho.] 40 00:03:10,389 --> 00:03:13,759 Vamos analisar o problema olhando para o nosso exemplo. 41 00:03:13,759 --> 00:03:15,914 Há cinco colunas de blocos aqui. 42 00:03:15,914 --> 00:03:18,781 A da esquerda não pode reter qualquer quantidade de energia, 43 00:03:18,781 --> 00:03:20,484 pois não há nada mais alto. 44 00:03:20,484 --> 00:03:23,118 A segunda coluna pode ter três unidades acima, 45 00:03:23,118 --> 00:03:27,244 já que elas ficariam presas entre estas duas colunas de quatro blocos. 46 00:03:27,244 --> 00:03:29,766 Temos três unidades ao calcular a altura 47 00:03:29,766 --> 00:03:32,186 na qual a energia se nivelaria, ou seja, quatro, 48 00:03:32,186 --> 00:03:36,216 e subtraindo a altura da coluna, então quatro menos um. 49 00:03:36,346 --> 00:03:38,178 A terceira coluna é parecida: 50 00:03:38,178 --> 00:03:41,808 quatro à esquerda, quatro à direita e tem três blocos de altura. 51 00:03:41,808 --> 00:03:46,177 Ou seja, ela reterá quatro menos três, que é igual a uma unidade. 52 00:03:46,537 --> 00:03:50,957 A quarta e a quinta colunas não têm nada mais alto à direita, 53 00:03:50,957 --> 00:03:53,427 então elas podem reter qualquer energia. 54 00:03:53,427 --> 00:03:57,245 Podemos adaptar essa ideia para um algoritmo. 55 00:03:57,245 --> 00:04:01,025 Considerando uma coluna de cada vez como o ponto de referência, 56 00:04:01,025 --> 00:04:03,516 Hedge pode olhar para a esquerda, coluna por coluna, 57 00:04:03,516 --> 00:04:08,136 para descobrir quanto mede a mais alta, olhar para a direita e fazer o mesmo, 58 00:04:08,156 --> 00:04:12,833 e usar a menor das duas como a altura a ser preenchida por energia. 59 00:04:12,833 --> 00:04:15,963 Se o resultado for maior que a coluna em questão, 60 00:04:15,963 --> 00:04:18,537 subtraia a altura da coluna original, 61 00:04:18,537 --> 00:04:23,334 e o resultado será o número de unidades que a coluna pode reter. 62 00:04:23,634 --> 00:04:27,194 Se for igual ou abaixo do nível da coluna em questão, 63 00:04:27,194 --> 00:04:29,397 a energia transbordará. 64 00:04:29,397 --> 00:04:32,917 Hedge pode usar um loop para aplicar isso a um reservatório inteiro, 65 00:04:32,917 --> 00:04:35,132 que se inicia na coluna à esquerda, 66 00:04:35,132 --> 00:04:38,382 e se move para a direita, uma coluna por vez. 67 00:04:38,662 --> 00:04:41,691 Para cada coluna, ele seguirá os mesmos passos: 68 00:04:41,691 --> 00:04:45,451 procurar pela mais alta à esquerda, fazer o mesmo à direita, 69 00:04:45,451 --> 00:04:49,271 calcular a menor das duas, subtrair a altura da coluna original 70 00:04:49,318 --> 00:04:53,178 e aumentar o total geral se o número for positivo. 71 00:04:53,178 --> 00:04:56,688 O loop se repetirá conforme o número de colunas. 72 00:04:56,848 --> 00:05:00,798 Isso funcionará, mas levará muito tempo para verificar um reservatório grande. 73 00:05:00,798 --> 00:05:05,328 A cada passo, Hedge repete a ação de olhar à esquerda e à direita. 74 00:05:05,328 --> 00:05:10,280 Se houver colunas N, ele deverá olhar para todas elas, N vezes. 75 00:05:10,280 --> 00:05:12,260 Há um modo mais rápido? 76 00:05:12,260 --> 00:05:14,048 Eis como economizar tempo: 77 00:05:14,048 --> 00:05:17,468 antes de fazer qualquer coisa, Hedge pode começar à esquerda 78 00:05:17,468 --> 00:05:21,338 e manter um registro de qual coluna é a mais alta. 79 00:05:21,338 --> 00:05:25,098 Aqui, seriam dois, novamente dois, já que a primeira coluna era mais alta, 80 00:05:25,098 --> 00:05:27,848 então quatro, quatro, quatro. 81 00:05:27,848 --> 00:05:30,628 Assim, ele pode encontrar as colunas mais altas à direita 82 00:05:30,628 --> 00:05:33,472 fazendo o mesmo, movendo-se da direita à esquerda: 83 00:05:33,472 --> 00:05:36,742 um, três, quatro, quatro, quatro. 84 00:05:36,882 --> 00:05:40,632 Por fim, ele terá na memória uma tabela como esta. 85 00:05:40,722 --> 00:05:45,961 Agora, Hedge pode ir além para calcular quanta energia haverá 86 00:05:45,961 --> 00:05:50,001 acima de cada coluna, com a mesma equação de antes: 87 00:05:50,001 --> 00:05:53,638 utilize o menor dos valores armazenados à esquerda e à direita, 88 00:05:53,638 --> 00:05:56,708 e subtraia a altura da torre atual. 89 00:05:56,708 --> 00:05:59,583 Ao invés de olhar para N colunas N vezes, 90 00:05:59,583 --> 00:06:02,293 ele olhará para N colunas apenas três vezes, 91 00:06:02,293 --> 00:06:04,573 o que chamamos de "tempo linear". 92 00:06:04,573 --> 00:06:07,814 Há maneiras de otimizar a solução ainda mais, 93 00:06:07,814 --> 00:06:10,564 mas isso basta para nossos heróis. 94 00:06:10,564 --> 00:06:12,974 Ethic e Hedge trabalham em conjunto. 95 00:06:14,992 --> 00:06:18,836 A primeira cascata de energia é muito fácil, e eles sobem a torre. 96 00:06:21,573 --> 00:06:23,781 A segunda é um pouco mais difícil. 97 00:06:33,051 --> 00:06:36,911 A terceira é grande, com dezenas de colunas de blocos. 98 00:06:36,911 --> 00:06:41,344 O tempo se esgota, mas o programa de Ethic é rápido. 99 00:06:41,344 --> 00:06:44,758 Ela consegue colocar o volante na posição correta bem a tempo, 100 00:06:49,015 --> 00:06:51,935 e a energia os leva até o Node da Criação. 101 00:06:55,640 --> 00:06:58,427 Assim como o primeiro artefato, este contém uma visão: 102 00:06:58,427 --> 00:07:00,867 memórias de anos passados. 103 00:07:01,067 --> 00:07:03,187 A máquina do mundo mudou tudo, 104 00:07:03,187 --> 00:07:06,856 e Ethic, na posição de engenheira-chefe de robótica, 105 00:07:06,856 --> 00:07:08,906 ficou preocupada com o que viu. 106 00:07:08,906 --> 00:07:11,946 Quando Bradbarrier foi construída para aprisionar as pessoas, 107 00:07:11,946 --> 00:07:14,586 Ethic sabia que algo estava muito errado. 108 00:07:14,586 --> 00:07:16,676 Então, ela criou três artefatos 109 00:07:16,676 --> 00:07:21,221 capazes de restaurar o poder, a criatividade e a memória das pessoas, 110 00:07:21,221 --> 00:07:24,131 e os contrabandeou para três comunidades. 111 00:07:24,131 --> 00:07:26,579 Antes que ela pudesse dizer às pessoas como usá-los, 112 00:07:26,579 --> 00:07:29,399 o governo descobriu suas intenções e enviou os robôs 113 00:07:29,399 --> 00:07:31,889 para prendê-la e os outros programadores. 114 00:07:31,889 --> 00:07:35,306 Ethic usou a máquina do mundo para criar uma última coisa: 115 00:07:35,306 --> 00:07:39,766 um robô que protegeria o artefato antigo das forças da ignorância, 116 00:07:39,766 --> 00:07:42,169 encerrando-o em um enorme labirinto. 117 00:07:42,329 --> 00:07:45,283 Ela deu o nome de Hedge à sua criação. 118 00:07:51,801 --> 00:07:56,221 Sem nenhum aviso, a corrente de energia oscila e então é interrompida.