The Tower of Epiphany | Think Like A Coder, Ep 7

430,906 views ・ 2020-02-27

TED-Ed


Por favor, clique duas vezes nas legendas em inglês abaixo para reproduzir o vídeo.

Tradutor: Simone Gumier Revisor: Maricene Crus
00:31
Ethic and Hedge are on the ground floor of a massive tower.
0
31587
5701
Ethic e Hedge estão no andar térreo de uma imensa torre.
00:37
Barriers of energy separate them from their quest’s second goal:
1
37288
4657
Barreiras de energia os separam do alvo da segunda busca deles:
00:41
the Node of Creation.
2
41945
2000
o "Node da Criação".
00:52
To reach it, Ethic must use three energy streams to climb the tower.
3
52667
4742
Para chegar até ele,
Ethic deve usar três correntes de energia para escalar a torre.
00:57
As soon as she steps forward a timer will begin counting down from 60 seconds.
4
57409
5950
Assim que ela avançar, uma contagem regressiva de 60 segundos terá início.
01:07
At the back of the room there’s a basin made of invisible towers
5
67359
4300
Atrás da sala, há um reservatório feito de torres invisíveis
01:11
that can hold energy between them.
6
71659
3076
que podem reter energia entre elas.
01:14
After one minute, a torrent of energy will pour down from above,
7
74735
4130
Depois de um minuto, uma cascata de energia descerá,
01:18
filling one unit at a time,
8
78865
2150
preenchendo uma unidade de cada vez, com um campo de força
01:21
with a force field preventing it from spilling out the front or back.
9
81015
4480
que impede a dissipação da energia para frente ou para trás.
01:25
During the 60 calm seconds,
10
85495
2130
Durante 60 segundos de silêncio,
01:27
Ethic and Hedge must decide exactly how many units of energy will fall.
11
87625
5098
Ethic e Hedge devem decidir exatamente quantas unidades de energia descerão.
01:32
For each of the three challenges,
12
92723
1700
Para cada um dos três desafios,
01:34
they must choose the amount that will fill the basin exactly.
13
94423
3665
eles devem escolher a quantidade exata que preencherá o reservatório.
01:38
If they do so, the energy will propel them further upwards.
14
98088
3850
Se fizerem assim, a energia os impulsionará para cima.
01:41
But if they get the amount at all wrong, the energy lift will fail,
15
101938
4620
Mas se eles usarem a quantidade errada, o "elevador de energia" não funcionará,
01:46
dropping them.
16
106558
1490
fazendo com que eles caiam.
01:48
Diagrams on the walls illustrate some examples.
17
108048
3300
Diagramas nas paredes ilustram alguns exemplos.
01:51
This configuration will capture exactly 2 units of energy.
18
111348
4270
Esta configuração capturará exatamente duas unidades de energia.
01:55
This configuration will capture 4— 3 here, and 1 here.
19
115618
5117
Esta configuração capturará quatro unidades: três aqui e uma aqui.
02:00
And this one will also capture 4,
20
120735
2540
E esta aqui também capturará quatro unidades,
02:03
because any energy on the right would spill out.
21
123275
3413
porque qualquer energia à direita se dissiparia.
02:06
The energy will rain down in such a way
22
126688
2220
A energia descerá de tal maneira
02:08
that it’ll only overflow if there’s no space that could hold it.
23
128908
4630
que somente transbordará se não houver espaço para retê-la.
02:13
Hedge can make one tower of blocks visible at a time and count how tall it is,
24
133538
5327
Hedge pode fazer uma torre de blocos visíveis de cada vez e calcular a altura,
02:18
but he can’t look at the whole structure all at once.
25
138865
3860
mas não consegue olhar para a estrutura toda de uma só vez.
02:22
How does Ethic program Hedge to figure out
26
142725
2805
Como será que Ethic pode programar Hedge para que ele descubra
02:25
exactly how much energy each basin can hold?
27
145530
3810
a quantidade exata de energia que cada reservatório pode reter?
02:29
Pause now to figure it out for yourself.
28
149340
9465
Um pausa agora para que você descubra sozinho.
[Regra 1] [Regra 2]
02:38
Here’s one way of thinking about what’s happening:
29
158805
2830
Eis uma maneira de pensar sobre o que está acontecendo:
02:41
each unoccupied cell will hold energy
30
161635
2915
cada célula vazia reterá energia
02:44
if and only if there is a wall eventually to its left,
31
164550
4240
somente se houver uma parede à sua esquerda
02:48
and a wall eventually to its right.
32
168790
2727
e uma parede à direita.
02:51
But it would take a long time for Hedge to check this for each individual cell.
33
171517
4805
Mas levaria muito tempo para que Hedge verificasse isso para cada célula.
02:56
So what if he were to consider a whole column of blocks at a time?
34
176322
4863
Então, e se ele verificasse uma coluna inteira de blocos de cada vez?
03:01
How many units of energy can this hold, for instance?
35
181185
3840
Por exemplo, quantas unidades de energia ela pode armazenar?
03:05
Pause now to figure it out for yourself.
36
185025
5364
[Uma pausa agora para que você descubra sozinho.]
03:10
Let’s analyze the problem by looking at our example.
37
190389
3370
Vamos analisar o problema olhando para o nosso exemplo.
03:13
There are 5 columns of blocks here.
38
193759
2155
Há cinco colunas de blocos aqui.
03:15
The leftmost one can’t hold any energy, because there’s nothing higher than it.
39
195914
4570
A da esquerda não pode reter qualquer quantidade de energia,
pois não há nada mais alto.
03:20
The 2nd stack can have 3 units above it,
40
200484
2634
A segunda coluna pode ter três unidades acima,
03:23
as they would be trapped between these two 4 block stacks.
41
203118
4126
já que elas ficariam presas entre estas duas colunas de quatro blocos.
03:27
We get 3 units by taking the height where the energy would level off— 4,
42
207244
4942
Temos três unidades ao calcular a altura
na qual a energia se nivelaria, ou seja, quatro,
03:32
and subtracting the height of the stack— so that’s 4 minus 1.
43
212186
4160
e subtraindo a altura da coluna, então quatro menos um.
03:36
The 3rd stack is similar— 4 to the left, 4 to the right, and it’s 3 high,
44
216346
5462
A terceira coluna é parecida:
quatro à esquerda, quatro à direita e tem três blocos de altura.
03:41
so it’ll hold 4 minus 3 equals 1 unit.
45
221808
4729
Ou seja, ela reterá quatro menos três, que é igual a uma unidade.
03:46
The 4th stack and 5th stacks have nothing higher than them to the right,
46
226537
4420
A quarta e a quinta colunas não têm nada mais alto à direita,
03:50
so they can’t hold any energy.
47
230957
2470
então elas podem reter qualquer energia.
03:53
We can adapt this idea into an algorithm.
48
233427
3818
Podemos adaptar essa ideia para um algoritmo.
03:57
Considering one column at a time as the point of reference,
49
237245
3780
Considerando uma coluna de cada vez como o ponto de referência,
04:01
Hedge can look to the left stack by stack to find the height of the tallest one,
50
241025
4411
Hedge pode olhar para a esquerda, coluna por coluna,
para descobrir quanto mede a mais alta, olhar para a direita e fazer o mesmo,
04:05
look to the right to find the height of the tallest one,
51
245436
2720
04:08
and take the smaller of the two as the height the energy can fill up to.
52
248156
4677
e usar a menor das duas como a altura a ser preenchida por energia.
04:12
If the result is higher than the column in question,
53
252833
3130
Se o resultado for maior que a coluna em questão,
04:15
subtract the height of the original column,
54
255963
2574
subtraia a altura da coluna original,
04:18
and the result will be the number of units that column can hold.
55
258537
5097
e o resultado será o número de unidades que a coluna pode reter.
04:23
If it's equal to or below the level of the column in question,
56
263634
3560
Se for igual ou abaixo do nível da coluna em questão,
04:27
the energy would spill off.
57
267194
2203
a energia transbordará.
04:29
Hedge can apply that to an entire basin with a loop
58
269397
3520
Hedge pode usar um loop para aplicar isso a um reservatório inteiro,
04:32
that starts on the left-most column and moves right, one column at a time.
59
272917
5745
que se inicia na coluna à esquerda,
e se move para a direita, uma coluna por vez.
04:38
For each column, he’ll run the same steps— look all the way left for the tallest,
60
278662
5009
Para cada coluna, ele seguirá os mesmos passos:
procurar pela mais alta à esquerda, fazer o mesmo à direita,
04:43
do the same to the right, take the lower height of the two,
61
283671
3560
calcular a menor das duas, subtrair a altura da coluna original
04:47
subtract the original column height,
62
287231
2087
04:49
and increase the grand total if that number is positive.
63
289318
3860
e aumentar o total geral se o número for positivo.
04:53
His loop will repeat as many times as there are columns.
64
293178
3670
O loop se repetirá conforme o número de colunas.
04:56
That will work, but it’ll take a long time for a large basin.
65
296848
3950
Isso funcionará, mas levará muito tempo para verificar um reservatório grande.
05:00
At every step Hedge repeats the action of looking left and looking right.
66
300798
4530
A cada passo, Hedge repete a ação de olhar à esquerda e à direita.
05:05
If there are N stacks, he’ll look at all N stacks N times.
67
305328
4952
Se houver colunas N, ele deverá olhar para todas elas, N vezes.
05:10
Is there a faster way?
68
310280
1980
Há um modo mais rápido?
05:12
Here’s one time saver: before doing anything else,
69
312260
3348
Eis como economizar tempo:
antes de fazer qualquer coisa, Hedge pode começar à esquerda
05:15
Hedge can start on the left,
70
315608
1860
05:17
and keep a running tally of what the highest stack is.
71
317468
3870
e manter um registro de qual coluna é a mais alta.
05:21
Here that would be 2, 2 again, since the first was higher,
72
321338
3760
Aqui, seriam dois, novamente dois, já que a primeira coluna era mais alta,
05:25
then 4, 4, 4.
73
325098
2750
então quatro, quatro, quatro.
05:27
He can then find the highest right-most stacks
74
327848
2780
Assim, ele pode encontrar as colunas mais altas à direita
05:30
by doing the same going right-to-left: 1, 3, 4, 4, 4.
75
330628
6254
fazendo o mesmo, movendo-se da direita à esquerda:
um, três, quatro, quatro, quatro.
05:36
In the end he’ll have a table like this in his memory.
76
336882
3840
Por fim, ele terá na memória uma tabela como esta.
05:40
Now, Hedge can take one more pass to calculate how much energy there will be
77
340722
5239
Agora, Hedge pode ir além para calcular quanta energia haverá
05:45
above every stack with the same equation from before:
78
345961
4040
acima de cada coluna, com a mesma equação de antes:
05:50
take the smaller of the stored left and right values,
79
350001
3637
utilize o menor dos valores armazenados à esquerda e à direita,
05:53
and subtract the height of the current tower.
80
353638
3070
e subtraia a altura da torre atual.
05:56
Instead of looking at N stacks N times, he’ll look at N stacks just 3 times—
81
356708
5585
Ao invés de olhar para N colunas N vezes,
ele olhará para N colunas apenas três vezes,
06:02
which is what’s called linear time.
82
362293
2280
o que chamamos de "tempo linear".
06:04
There are ways to optimize the solution even further,
83
364573
3241
Há maneiras de otimizar a solução ainda mais,
06:07
but this is good enough for our heroes.
84
367814
2750
mas isso basta para nossos heróis.
06:10
Ethic and Hedge work as one.
85
370564
1770
Ethic e Hedge trabalham em conjunto.
06:14
The first cascade is a breeze, and they rise up the tower.
86
374992
3844
A primeira cascata de energia é muito fácil, e eles sobem a torre.
06:21
The second is a little tougher.
87
381573
2010
A segunda é um pouco mais difícil.
06:33
The third is huge, with dozens of stacks of blocks.
88
393051
3860
A terceira é grande, com dezenas de colunas de blocos.
06:36
The timer ticks down towards zero, but Ethic’s program is fast.
89
396911
4433
O tempo se esgota, mas o programa de Ethic é rápido.
06:41
She gets the wheel in position just in time,
90
401344
2964
Ela consegue colocar o volante na posição correta bem a tempo,
06:49
and the energy lifts them to the Node of Creation.
91
409015
2920
e a energia os leva até o Node da Criação.
06:55
Like the first, it reveals a vision: memories of years gone by.
92
415640
5427
Assim como o primeiro artefato, este contém uma visão:
memórias de anos passados.
07:01
The world machine changed everything,
93
421067
2120
A máquina do mundo mudou tudo,
07:03
and Ethic, in her position as chief robotics engineer,
94
423187
3669
e Ethic, na posição de engenheira-chefe de robótica,
07:06
grew troubled by what she saw.
95
426856
2050
ficou preocupada com o que viu.
07:08
When the Bradbarrier went up to keep the people in,
96
428906
3040
Quando Bradbarrier foi construída para aprisionar as pessoas,
07:11
she knew something was seriously wrong.
97
431946
2640
Ethic sabia que algo estava muito errado.
07:14
So she created three artifacts
98
434586
2090
Então, ela criou três artefatos
07:16
with the ability to restore people’s power, creativity, and memory,
99
436676
4545
capazes de restaurar o poder, a criatividade e a memória das pessoas,
07:21
and smuggled them to three communities.
100
441221
2910
e os contrabandeou para três comunidades.
07:24
Before she could tell people how to use them,
101
444131
2318
Antes que ela pudesse dizer às pessoas como usá-los,
07:26
the government discovered her efforts and sent bots to arrest her
102
446449
3510
o governo descobriu suas intenções e enviou os robôs
07:29
and the other programmers.
103
449959
1930
para prendê-la e os outros programadores.
07:31
The last thing Ethic used the world machine to create
104
451889
3320
Ethic usou a máquina do mundo para criar uma última coisa:
07:35
was a robot that would protect the ancient device
105
455209
2790
um robô que protegeria o artefato antigo das forças da ignorância,
07:37
from the forces of ignorance by enclosing it in a giant maze.
106
457999
4330
encerrando-o em um enorme labirinto.
07:42
She named her creation Hedge.
107
462329
2414
Ela deu o nome de Hedge à sua criação.
07:51
Without warning, the energy lift flickers, then fizzles out.
108
471801
3830
Sem nenhum aviso, a corrente de energia oscila e então é interrompida.
Sobre este site

Este site apresentará a você vídeos do YouTube que são úteis para o aprendizado do inglês. Você verá aulas de inglês ministradas por professores de primeira linha de todo o mundo. Clique duas vezes nas legendas em inglês exibidas em cada página de vídeo para reproduzir o vídeo a partir daí. As legendas rolarão em sincronia com a reprodução do vídeo. Se você tiver algum comentário ou solicitação, por favor, entre em contato conosco usando este formulário de contato.

https://forms.gle/WvT1wiN1qDtmnspy7