A bug travels from A to B along the segments in the hexagonal lattice pictured below. The segments marked with an arrow can be traveled only in the direction of the arrow, and the bug never travels the same segment more than once. How many different paths are there?

- A)
- B)
- C)
- D)
- E)
Answer
E
Key insight
Once the bug exits an arrow in columns 1, 3, 5, 7 it can never go back, so the count multiplies stage by stage: 1, 5, 120, 1200 per arrow.
Solution
The rightward arrows form seven vertical columns holding arrows; columns , , also contain one leftward arrow on the center line.
Key structure: every edge leaving the far end of a column-, , or arrow leads rightward, and the leftward arrows only reach vertices between those checkpoints. So once the bug exits such an arrow it can never return to anything on its left. Every path uses exactly one arrow from each of columns , and the number of routes from a chosen arrow to a chosen arrow two columns ahead does not depend on the earlier route, so the count multiplies stage by stage.
Between checkpoints the bug may go straight through one middle arrow, swap halves (upper/lower) at a center-line vertex, or take the leftward arrow and then the other middle arrow. Enumerating these options, from one checkpoint arrow there are:
- column : routes to each column- arrow in the same half, to each in the opposite half;
- column : routes to each same-half arrow, to each opposite-half arrow;
- column : routes to the same-half arrow, to the other.
By symmetry every arrow in a column has the same count. Column : each. Column : each. Column : each. Column : each. Each column- arrow leads to in one way, so the total is
The answer is .
Why this works
One-way edges create checkpoints that the bug crosses exactly once, and crossing a checkpoint wipes the slate clean: nothing behind it is reachable, so nothing behind it matters. That independence is what lets a huge path count factor into a product of small, hand-countable transition numbers. The symmetry of the lattice cuts the work further, since every arrow in the same column has the same count.
Alternative approach
Answer-choice check: each column- arrow is reached in ways, and after crossing column the remaining count depends only on which column- arrow was used, so the total is a multiple of . Only is divisible by .
The trap
Ignoring the three leftward arrows and counting only monotone paths (1024), or forgetting that the bug may switch between the upper and lower halves at a center vertex.
Common mistakes
- Ignoring the three leftward arrows and counting only monotone paths (1024), or forgetting that the bug may switch between the upper and lower halves at a center vertex.
- Allowing the bug to use both arrows of a checkpoint column, or to reuse a slanted edge after doubling back; each edge may be traversed only once.
Techniques
Split into exhaustive cases and handle each · Define states/recurrence and iterate · Exploit symmetry to reduce work or pair up objects