# Find the fastest path through this Brazilian concretist poem

One day, a small jet was flying over the concretist poem "Velocidade" (Speed), by the Brazilian poet Ronaldo Azeredo.

In order to cover every vowel present in this poem, it goes in straight line from one letter to another either orthogonally or diagonally adjacent, never making a turn sharper than 45 degrees*.

Assuming the letters are like points in a square lattice, and the jet travels at constant speed, what is the fastest way this can be achieved by the pilot?

Notice that no restrictions were placed in where the jet should start, except that its position goes from one letter to another. Also, the jet is not allowed to leave the matrix of letters.

* Measured by the external angle, i.e. deviation from the original path, so that a 0 degree turn leads to the same direction, while a 180 degree turn makes the jet go in the reverse.

• ...Where does the pilot begin? – warspyking Sep 21 '15 at 13:26
• Can the plane leave the square once it has entered? – LogicianWithAHat Sep 21 '15 at 14:34
• You'd have to end on the E at the bottom-right corner, because otherwise there's no way for you to turn out of it. – Joe Z. Sep 21 '15 at 15:37
• OP doesn't say it's not allowed to use vowels several times. (This would not be solvable otherwise.) – Tom K. Sep 21 '15 at 16:07
• Do you mean "sharper than 135 degrees"? All your answers seem to heed this constraint. – djechlin Sep 21 '15 at 18:31

Here's a solution with

54 steps.

$38 \space horizontal/vertical + 16 \space diagonal => length \space 60.627$
Thanks to f'' for length optimization.

A brute-forced solution with

47 steps.

$28 \space horizontal/vertical + 19 \space diagonal => length \space 54.87$

• With three extra vowel touches in this one, do you think hypothetically there should be a solution with 51, or is that not guaranteed? – lorimer Sep 21 '15 at 18:13
• @lorimer I think the extra vowels are no more different than the consonants. It's possible there is a better solution. – Sleafar Sep 21 '15 at 18:18
• It looks like you have a 90 degree turn at the bottommost 'O' – Sconibulus Sep 21 '15 at 20:46
• You can save 4(sqrt2-1) by changing the triple crossing to three vertical lines. – f'' Sep 21 '15 at 20:57
• You can also save another 2(sqrt2-1) by changing the LC/OO crossing in the lower middle to two horizontal segments. – f'' Sep 21 '15 at 21:00

OK. Touching every vowel once, using coordinates A-J horizontal and 0-9 vertically, with the origin in the top left:

J9->J1, I0, H0->A7, A8, B9->H9
I9->I2, H1, G1->B6, B7, C8->G8
H7->H3, G2, F2->C5, C6, D7->F7
G6->G4, F3->D3, C4, C5, D6->E6, F5

That's 71 steps. It's probably not optimized perfectly, so I'll keep looking, but it's at least a starting point.

EDIT: This one has 59 but touches some vowels more than once. Counting as distance (cf. Sleafar's comment) it would be 68.11 units with 22 diagonal moves.

J9->J1, I0, H0, G1, G2, H3, I4->I8
H9->B9, A8, A7, B6, C6->E8->G8, H7
H7->H5, G4, F4->C7, C8, D9, E9, F8
F7->I4->I2, H1, G1, F2->F5, E6

This one doesn't waste as much time by avoiding U-turns, but instead grabs what it can that's nearby.

ETA3: nevermind, the edit would have missed one 'E'. i'll quit second-guessing myself now

I think I am missing something obvious, since the solution couldn't be that easy

16 diagonal + 16 vertical/horizontal steps.

• "never making a turn sharper than 45 degrees" – Tryth Sep 22 '15 at 3:11
• where? I am brain-dead here, and can see only 90 degrees and 135 degrees – kushj Sep 22 '15 at 3:25
• Since this point has been brought up before, I edited my post to clarify it – MathET Sep 22 '15 at 3:41