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

430,906 views ・ 2020-02-27

TED-Ed


Por favor, faça duplo clique nas legendas em inglês abaixo para reproduzir o vídeo.

Tradutor: Joel Santos Revisora: Margarida Ferreira
00:31
Ethic and Hedge are on the ground floor of a massive tower.
0
31587
5701
A Ética e o Hedge estão no piso térreo de uma torre enorme.
00:37
Barriers of energy separate them from their quest’s second goal:
1
37288
4657
Barreiras de energia separam-nos do seu segundo objetivo:
00:41
the Node of Creation.
2
41945
2000
o Nódulo da Criação.
00:52
To reach it, Ethic must use three energy streams to climb the tower.
3
52667
4742
Para alcançá-lo, a Ética tem de usar três fluxos de energia para subir a torre.
00:57
As soon as she steps forward a timer will begin counting down from 60 seconds.
4
57409
5950
Assim que der um passo,
um temporizador começará uma contagem decrescente de 60 segundos.
01:07
At the back of the room there’s a basin made of invisible towers
5
67359
4300
No fundo da sala há um reservatório de torres invisíveis
01:11
that can hold energy between them.
6
71659
3076
que podem reter a energia entre elas.
01:14
After one minute, a torrent of energy will pour down from above,
7
74735
4130
Após um minuto, cai do alto uma torrente de energia,
01:18
filling one unit at a time,
8
78865
2150
enchendo uma unidade de cada vez,
01:21
with a force field preventing it from spilling out the front or back.
9
81015
4480
com um campo de forças que impede derrames pela frente ou por trás.
01:25
During the 60 calm seconds,
10
85495
2130
Durante esses calmos 60 segundos,
01:27
Ethic and Hedge must decide exactly how many units of energy will fall.
11
87625
5098
a Ética e o Hedge têm de decidir o número exato de unidades de energia que vão cair.
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
têm de escolher a quantidade exata que irá preencher o reservatório.
01:38
If they do so, the energy will propel them further upwards.
14
98088
3850
Se o fizerem, a energia irá impulsioná-los para cima.
01:41
But if they get the amount at all wrong, the energy lift will fail,
15
101938
4620
Mas, se a quantidade for a errada, o elevador de energia irá falhar,
01:46
dropping them.
16
106558
1490
e eles cairão.
01:48
Diagrams on the walls illustrate some examples.
17
108048
3300
Os diagramas nas paredes ilustram alguns exemplos,
01:51
This configuration will capture exactly 2 units of energy.
18
111348
4270
Esta configuração irá capturar exatamente duas unidades de energia.
01:55
This configuration will capture 4— 3 here, and 1 here.
19
115618
5117
Esta configuração irá capturar quatro: três aqui e uma aqui.
02:00
And this one will also capture 4,
20
120735
2540
E nesta também capturará quatro,
02:03
because any energy on the right would spill out.
21
123275
3413
uma vez que qualquer energia à direita transbordará.
02:06
The energy will rain down in such a way
22
126688
2220
A energia cairá de uma forma
02:08
that it’ll only overflow if there’s no space that could hold it.
23
128908
4630
que só transbordará se não houver espaço para a conter.
02:13
Hedge can make one tower of blocks visible at a time and count how tall it is,
24
133538
5327
O Hedge pode tornar visível uma coluna de blocos de cada vez
e contar a sua altura,
02:18
but he can’t look at the whole structure all at once.
25
138865
3860
mas não poderá ver a estrutura inteira de uma só vez.
02:22
How does Ethic program Hedge to figure out
26
142725
2805
Como irá a Ética programar o Hedge para calcular
02:25
exactly how much energy each basin can hold?
27
145530
3810
a capacidade exata de energia de cada reservatório?
Faz uma pausa agora para chegares à solução sozinho.
02:29
Pause now to figure it out for yourself.
28
149340
9465
[Cada bacia tem uma série de torres de blocos que retêm a energia entre elas]
[Hedge tem de calcular quantas unidades de energia uma dada bacia pode conter]
02:38
Here’s one way of thinking about what’s happening:
29
158805
2830
Eis uma forma de pensar no que está a acontecer:
02:41
each unoccupied cell will hold energy
30
161635
2915
cada célula vazia pode reter energia
02:44
if and only if there is a wall eventually to its left,
31
164550
4240
apenas e se existir uma parede à sua esquerda
02:48
and a wall eventually to its right.
32
168790
2727
e uma parede à sua direita.
02:51
But it would take a long time for Hedge to check this for each individual cell.
33
171517
4805
Mas Hedge levaria demasiado tempo a verificar cada célula individual.
02:56
So what if he were to consider a whole column of blocks at a time?
34
176322
4863
E se em vez disso considerarmos uma coluna 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 poderá esta coluna reter?
03:05
Pause now to figure it out for yourself.
36
185025
5364
Faz uma pausa agora para tentares chegar à solução 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
Temos aqui cinco colunas de blocos.
03:15
The leftmost one can’t hold any energy, because there’s nothing higher than it.
39
195914
4570
A coluna mais à esquerda não pode reter energia,
porque não há nada mais alta que ela.
03:20
The 2nd stack can have 3 units above it,
40
200484
2634
A segunda coluna pode reter três unidades acima dela,
03:23
as they would be trapped between these two 4 block stacks.
41
203118
4126
uma vez que elas ficarão 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
Obtemos três unidades medindo a altura da coluna onde a energia ficará nivelada:
— ou seja, quatro —
03:32
and subtracting the height of the stack— so that’s 4 minus 1.
43
212186
4160
e subtraindo-lhe a altura da coluna — ou seja, 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 é similar
— quatro à esquerda, quatro à direita, e três de altura,
03:41
so it’ll hold 4 minus 3 equals 1 unit.
45
221808
4729
por isso manterá quatro menos três, ou seja, 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 que elas à direita,
03:50
so they can’t hold any energy.
47
230957
2470
logo não podem reter nenhuma energia.
03:53
We can adapt this idea into an algorithm.
48
233427
3818
Podemos adaptar esta ideia a um logaritmo.
03:57
Considering one column at a time as the point of reference,
49
237245
3780
Considerando só uma coluna de cada vez como 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
o Hedge pode olhar para a esquerda, coluna a coluna,
para encontrar a altura da mais alta.
04:05
look to the right to find the height of the tallest one,
51
245436
2720
e olhar para a direita para encontrar a altura da mais alta.
04:08
and take the smaller of the two as the height the energy can fill up to.
52
248156
4677
e considerar a mais baixa das duas
como o limite máximo de contenção de energia.
04:12
If the result is higher than the column in question,
53
252833
3130
Se o resultado for mais alto do que a coluna em questão,
04:15
subtract the height of the original column,
54
255963
2574
subtraímos 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 conter.
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 iriá transbordar.
04:29
Hedge can apply that to an entire basin with a loop
58
269397
3520
O Hedge pode aplicar isso a todo o reservatório com um "loop"
04:32
that starts on the left-most column and moves right, one column at a time.
59
272917
5745
que começa na coluna mais à esquerda
e vai avançando para a direita, uma coluna de cada 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, dará os mesmos passos
— ver a 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
pegar na altura da mais baixa,
04:47
subtract the original column height,
62
287231
2087
subtrair a altura da coluna original,
04:49
and increase the grand total if that number is positive.
63
289318
3860
e adicionando ao total se o resultado for positivo.
04:53
His loop will repeat as many times as there are columns.
64
293178
3670
Este "loop" repete-se tantas vezes quanto o número de colunas.
04:56
That will work, but it’ll take a long time for a large basin.
65
296848
3950
Isto poderá resultar, mas irá demorar se o reservatório for grande.
05:00
At every step Hedge repeats the action of looking left and looking right.
66
300798
4530
A cada passo o Hedge repete a ação de olhar para a esquerda e para a direita.
05:05
If there are N stacks, he’ll look at all N stacks N times.
67
305328
4952
Se houver "n" colunas, olha "n" vezes para "n" colunas.
05:10
Is there a faster way?
68
310280
1980
Existirá uma forma mais rápida?
05:12
Here’s one time saver: before doing anything else,
69
312260
3348
Eis uma forma de poupar tempo: antes de qualquer coisa,
05:15
Hedge can start on the left,
70
315608
1860
ele pode começar pela esquerda.
05:17
and keep a running tally of what the highest stack is.
71
317468
3870
e manter uma contagem de qual é a coluna mais alta.
05:21
Here that would be 2, 2 again, since the first was higher,
72
321338
3760
Aqui seria dois, dois de novo, uma vez que a primeira era maior,
05:25
then 4, 4, 4.
73
325098
2750
depois quatro, quatro, quatro.
05:27
He can then find the highest right-most stacks
74
327848
2780
Pode depois descobrir a mais alta à direita
05:30
by doing the same going right-to-left: 1, 3, 4, 4, 4.
75
330628
6254
fazendo o mesmo da direita para a 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
No fim, terá uma tabela como esta na sua memória.
05:40
Now, Hedge can take one more pass to calculate how much energy there will be
77
340722
5239
Agora, o Hedge poderá dar mais um passo para calcular quanta energia
05:45
above every stack with the same equation from before:
78
345961
4040
será necessária usando a mesma equação anterior:
05:50
take the smaller of the stored left and right values,
79
350001
3637
verificar os valores das colunas mais baixas à esquerda e à direita,
05:53
and subtract the height of the current tower.
80
353638
3070
e subtrair a altura da coluna 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 verificar "n" colunas "n" vezes,
irá verificar "n" colunas apenas três vezes,
06:02
which is what’s called linear time.
82
362293
2280
ao que chamamos "tempo linear".
06:04
There are ways to optimize the solution even further,
83
364573
3241
Existem formas de otimizar ainda mais esta solução,
06:07
but this is good enough for our heroes.
84
367814
2750
mas é o suficiente para os nossos heróis.
06:10
Ethic and Hedge work as one.
85
370564
1770
A Ética e o Hedge trabalham como um só.
06:14
The first cascade is a breeze, and they rise up the tower.
86
374992
3844
A primeira cascata é fácil e ascendem na 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 é enorme com dezenas de colunas de blocos.
06:36
The timer ticks down towards zero, but Ethic’s program is fast.
89
396911
4433
O temporizador não para, mas o programa da Ética é veloz.
06:41
She gets the wheel in position just in time,
90
401344
2964
Consegue colocar a manivela em posição mesmo a tempo,
06:49
and the energy lifts them to the Node of Creation.
91
409015
2920
e a energia eleva-os até ao Nódulo da Criação.
06:55
Like the first, it reveals a vision: memories of years gone by.
92
415640
5427
Tal como o primeiro, revela uma visão: a memória 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 a Ética, na sua 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 a Bradbarreira surgiu para impedir as pessoas de sair,
07:11
she knew something was seriously wrong.
97
431946
2640
ela percebeu que algo estava mesmo muito mal.
07:14
So she created three artifacts
98
434586
2090
Por isso ela criou três artefatos
07:16
with the ability to restore people’s power, creativity, and memory,
99
436676
4545
com o poder de restaurar o poder, a criatividade e a memória das pessoas,
07:21
and smuggled them to three communities.
100
441221
2910
e escondeu-as em três comunidades.
07:24
Before she could tell people how to use them,
101
444131
2318
Antes de poder ensinar as pessoas a usá-las,
07:26
the government discovered her efforts and sent bots to arrest her
102
446449
3510
o governo soube das suas intenções e enviou robôs para a prender
07:29
and the other programmers.
103
449959
1930
e aos outros programadores.
07:31
The last thing Ethic used the world machine to create
104
451889
3320
A última coisa que a Ética criou com a máquina do mundo,
07:35
was a robot that would protect the ancient device
105
455209
2790
foi um robô que protegesse o aparelho ancestral
07:37
from the forces of ignorance by enclosing it in a giant maze.
106
457999
4330
das forças da ignorância, fechando-a num labirinto gigante.
07:42
She named her creation Hedge.
107
462329
2414
Chamou Hedge à sua criação.
07:51
Without warning, the energy lift flickers, then fizzles out.
108
471801
3830
Sem aviso prévio, o elevador de energia começa a piscar e apaga-se.
Sobre este site

Este sítio irá apresentar-lhe vídeos do YouTube que são úteis para a aprendizagem do inglês. Verá lições de inglês ensinadas por professores de primeira linha de todo o mundo. Faça duplo clique nas legendas em inglês apresentadas em cada página de vídeo para reproduzir o vídeo a partir daí. As legendas deslocam-se em sincronia com a reprodução do vídeo. Se tiver quaisquer comentários ou pedidos, por favor contacte-nos utilizando este formulário de contacto.

https://forms.gle/WvT1wiN1qDtmnspy7