The Chasm | Think Like A Coder, Ep 6

449,226 views ・ 2020-01-30

TED-Ed


Fare doppio clic sui sottotitoli in inglese per riprodurre il video.

Traduttore: Revisore: Chiara Polesinanti
[EPISODIO 06 L'ABISSO]
00:21
Ethic, Hedge, and Octavia stand on the edge of a bottomless ravine.
0
21937
4675
Ethic, Hedge e Octavia si trovano sull’orlo di un burrone senza fine.
00:26
It’s the only thing between them and the tower
1
26612
2690
È l'unica cosa che li separa dalla torre
00:29
that houses the second of three powerful artifacts.
2
29302
3648
che ospita il secondo di tre potenti artefatti.
00:32
They’ve got a brief window of time to get across before the guards return.
3
32950
4980
Hanno poco tempo per attraversare prima che le guardie ritornino.
00:37
With Hedge’s fuel gauge on empty he won’t be able to fly Ethic across,
4
37930
4705
Senza carburante Hedge non riuscirà a trasportare Ethic,
00:42
so the only option is to make a bridge.
5
42635
3630
quindi l’unica opzione è costruire un ponte.
00:46
Fortunately, the floating stacks of stones nearby are bridge components—
6
46265
4655
Fortunatamente, i mucchi di pietre che fluttuano lì vicino
sono pezzi del ponte, inventati da Octavia stessa,
00:50
invented by Octavia herself— called hover-blocks.
7
50920
4026
chiamati blocchi sospesi.
00:54
Activate a pile with a burst of energy,
8
54946
2552
Attiva uno dei mucchi con un’esplosione di energia
00:57
and they’ll self-assemble to span the ravine as Ethic walks across.
9
57498
4516
e si assembleranno da soli per far attraversare il burrone a Ethic.
Ma ovviamente c'è un problema.
01:02
But there is, of course, a catch.
10
62014
3578
01:05
The hover-blocks are only stable when they’re perfectly palindromic.
11
65592
4659
I blocchi sospesi sono stabili
solo se disposti secondo un palindromo perfetto.
01:10
Meaning they have to form a sequence
12
70251
2260
Ovvero devono formare una sequenza
01:12
that’s the same when viewed forwards and backwards.
13
72511
4263
che sia identica quando vista sia in un senso che nell’altro.
01:16
The stacks start in random orders,
14
76774
2170
I mucchi partono con sequenze casuali,
01:18
but will always put themselves into a palindromic configuration
15
78944
3660
ma formeranno sempre una struttura palindroma
01:22
if they can.
16
82604
1290
se questa è possibile.
01:23
If they get to a point where a palindrome isn’t possible,
17
83894
2880
Se arrivano a un punto in cui il palindromo non è possibile,
01:26
the bridge will collapse,
18
86774
1551
il ponte collasserà,
01:28
and whoever’s on it will fall into the ravine.
19
88325
3489
e chiunque vi si trovi sopra cadrà nel burrone.
01:31
Let’s look at an example.
20
91814
1638
Vediamo un esempio.
01:33
This stack would make itself stable.
21
93452
2460
Questo mucchio rimarrà stabile.
01:35
First the A blocks hold themselves in place.
22
95912
3000
Prima si posizioneranno i blocchi A.
01:38
Then the B’s.
23
98912
1070
Poi i B.
01:39
And finally the C would nestle right between the B’s.
24
99982
3690
E infine il C si metterà tra i B.
01:43
However, suppose there was one more A.
25
103672
3450
Tuttavia, supponiamo che ci sia ancora un A.
01:47
First two A blocks form up, then two B’s,
26
107122
3120
Prima si posizioneranno i due blocchi A, poi i due B.
01:50
but now the remaining C and A have nowhere to go,
27
110242
3370
Ma ora i rimanenti C e A non avranno dove mettersi,
01:53
so the whole thing falls apart.
28
113612
2460
così l'intera costruzione crollerà.
01:56
The Node of Power enables Hedge to energize a single stack of blocks.
29
116072
4670
Il Nodo dell’Energia consente a Hedge di dare energia a un solo mucchio.
02:00
What instructions can Ethic give Hedge to allow him to efficiently find
30
120742
4334
Che istruzioni può dare Ethic a Hedge per permettergli di trovare
02:05
and power a stable palindromic stack?
31
125076
3051
e alimentare un mucchio che diventi un palindromo stabile?
02:08
Pause now to figure it out for yourself.
32
128127
9970
Metti in pausa e cerca di scoprirlo da solo.
02:18
Examples of palindromes include ANNA, RACECAR, and MADAM IM ADAM.
33
138097
5461
Esempi di palindromi sono ANNA, RACECAR, e MADAM IM ADAM.
02:23
Counting the number of times a given letter appears in a palindrome
34
143558
3730
Contare il numero di volte in cui una data lettera compare in un palindromo
02:27
will reveal a helpful pattern.
35
147288
2532
rivelerà uno schema utile.
02:29
Pause now to figure it out for yourself.
36
149820
4831
Metti in pausa e cerca di scoprirlo da solo.
02:34
Let’s first look at a naïve solution to this problem.
37
154651
3490
Cominciamo vedendo una soluzione Naif per questo problema.
02:38
A naïve solution is a simple, brute-force approach that isn’t optimized—
38
158141
4708
Una soluzione Naif è un approccio semplice, per tentativi, non ottimizzato,
02:42
but will get the job done.
39
162849
1980
che permette, però, di finire il lavoro.
02:44
Naïve solutions are helpful ways to analyze problems,
40
164829
3491
Le soluzioni Naif rappresentano modi utili per analizzare i problemi
02:48
and work as stepping stones to better solutions.
41
168320
3434
e lavorare per gradi verso soluzioni migliori.
02:51
In this case, a naïve solution is to approach a pile of blocks,
42
171754
3770
In questo caso, una soluzione Naif è quella di affrontare un mucchio,
02:55
try all the arrangements,
43
175524
1500
tentare tutte le disposizioni
02:57
and see if one is a palindrome by reading it forward and then backwards.
44
177024
4727
e vedere se una di queste è un palindromo leggendola in un verso e poi nell’altro.
03:01
The problem with this approach
45
181751
1480
Il problema con questo approccio è che richiede tantissimo tempo.
03:03
is that it would take a tremendous amount of time.
46
183231
2493
03:05
If Hedge tried one combination every second,
47
185724
2850
Se Hedge tentasse una combinazione ogni secondo,
03:08
a stack of just 10 different blocks would take him 42 days to exhaust.
48
188574
5198
per disporre un mucchio di soli 10 blocchi diversi
ci metterebbe 42 giorni.
03:13
That’s because the total time is a function of the factorial
49
193772
3830
Questo perché il tempo totale necessario è in funzione del fattoriale
03:17
of the number of blocks there are.
50
197602
2142
del numero di blocchi presenti.
03:19
10 blocks have over 3 million combinations.
51
199744
3600
Per 10 blocchi ci sono più di 3 milioni di combinazioni.
03:23
What this naïve solution shows is that we need a much faster way
52
203344
4280
Questa soluzione Naif ci mostra che abbiamo bisogno di un modo più veloce
03:27
to tell whether a pile of blocks can form a palindrome.
53
207624
3593
per predire se un mucchio di blocchi possa formare un palindromo.
03:31
To start, it may be intuitively clear that a pile of all different blocks
54
211217
4716
Per iniziare, potrebbe risultare intuitivo che un mucchio con blocchi tutti diversi
03:35
will never form one.
55
215933
1420
non formerà mai un palindromo.
03:37
Why?
56
217353
790
Perché?
03:38
The first and last blocks can’t be the same if there are no repeats.
57
218143
5281
Il primo e l’ultimo blocco non possono essere uguali
se i blocchi sono tutti diversi.
03:43
So when can a given sequence become a palindrome?
58
223424
5012
Allora quando una data sequenza può diventare un palindromo?
03:48
One way to figure that out is to analyze a few existing palindromes.
59
228436
4480
Per scoprirlo possiamo analizzare alcuni esempi di palindromi.
03:52
In ANNA, there are 2 A’s and 2 N’s.
60
232916
3254
In ANNA ci sono 2 A e 2 N.
03:56
RACECAR has 2 R’s, 2 A’s, 2 C’s, and 1 E.
61
236170
4886
RACERCAR ha 2 R, 2 A, 2 C e 1 E.
04:01
And MADAM IM ADAM has 4 M’s, 4 A’s, 2 D’s, and 1 I.
62
241056
6730
E MADAM IM ADAM ha 4 M, 4 A, 2 D e 1 I.
04:07
The pattern here is that most of the letters occur
63
247786
3140
Lo schema qui prevede
che la maggior parte delle lettere siano presenti in numero pari
04:10
an even number of times,
64
250926
1774
04:12
and there’s at most 1 that occurs just once.
65
252700
3280
e che ce ne sia al massimo 1 presente una sola volta.
04:15
Is that it?
66
255980
1110
Tutto qui?
04:17
What if RACECAR had 3 E’s instead of 1?
67
257090
3260
E se RACECAR avesse 3 E invece che 1?
04:20
We could tack the new E’s onto the ends and still get a palindrome,
68
260350
3710
Potremmo aggiungere le nuove E alle estremità
e avremmo ancora un palindromo.
04:24
so 3 is ok.
69
264060
1840
Quindi 3 vanno bene.
04:25
But make that 3 E’s and 3 C’s, and there’s nowhere for the last C to go.
70
265900
6064
Ma mettiamo che ci siano 3 E e 3 C, e non ci sia posto per l’ultima C.
04:31
So the most generalized insight is that
71
271964
2720
Quindi, la regola generale prevede
04:34
at most one letter can appear an odd number of times,
72
274684
4096
che ci sia al massimo una lettera presente un numero dispari di volte,
04:38
but the rest have to be even.
73
278780
3066
ma le altre devono essere pari.
04:41
Hedge can count the letters in each stack and organize them into a dictionary,
74
281846
4314
Hedge può contare le lettere di ogni mucchio
e sistemarle in un dizionario,
04:46
which is a tidy way of storing information.
75
286160
2725
che è un modo ordinato di conservare le informazioni.
04:48
A loop could then go through and count how many times odd numbers appear.
76
288885
4579
Utilizzando un ciclo si può contare quante volte sono presenti numeri dispari.
04:53
If there are less than 2 odd characters, the stack can be made into a palindrome.
77
293464
5500
Se ci sono meno di 2 caratteri dispari, il mucchio può ordinarsi in un palindromo.
04:58
This approach is much, much faster than the naïve solution.
78
298964
3720
Questo approccio è decisamente molto più veloce della soluzione Naif.
05:02
Instead of factorial time, it takes linear time.
79
302684
3420
Invece di un tempo fattoriale richiede un tempo lineare.
05:06
That’s where the time increases
80
306104
1570
Ossia il tempo necessario aumenta
05:07
in proportion to the number of blocks there are.
81
307674
2710
in modo proporzionale al numero di blocchi presenti.
05:10
Now write a loop for Hedge to approach the piles individually,
82
310384
3990
Ora scrivi un ciclo per Hedge affinché affronti i mucchi uno alla volta
05:14
and stop when he finds a good one, and you’ll be ready to go.
83
314374
4155
e si fermi una volta trovato quello adatto, e sarai pronto per partire.
05:18
Here’s what happens:
84
318529
1389
Ecco cosa succede:
05:19
Hedge is fast, but there are so many piles it takes a long time.
85
319918
4046
Hedge è veloce,
ma ci sono così tanti mucchi che ci mette molto tempo.
05:23
Too long.
86
323964
1356
Troppo.
06:17
Ethic and Hedge are safe.
87
377897
1680
Ethic e Hedge sono in salvo.
06:19
But Octavia is not so lucky.
88
379577
2423
Ma Octavia non è altrettanto fortunata.
A proposito di questo sito web

Questo sito vi presenterà i video di YouTube utili per l'apprendimento dell'inglese. Vedrete lezioni di inglese tenute da insegnanti di alto livello provenienti da tutto il mondo. Fate doppio clic sui sottotitoli in inglese visualizzati su ogni pagina video per riprodurre il video da lì. I sottotitoli scorrono in sincronia con la riproduzione del video. Se avete commenti o richieste, contattateci tramite questo modulo di contatto.

https://forms.gle/WvT1wiN1qDtmnspy7