- Path, Cell & Region: As used in the question
- Line: One of the 4 perimeter lines of any given cell
- Wall: A single black line
- Door: A wall through which the path crosses
Things to note before starting to draw:
The "12" cell in the outer region means that there must be atleast 12 doors into that region (there could be more than 12, provided they are found after the path crosses "12"). 1 door goes from S to the outer region, so atleast 11 doors come from the inner region. The number of doors out of the inner region must be the same as the number in, so there are atleast 22 doors along the border between the regions.
There are 24 cells in the inner region. The path must go into and come out of each cell exactly once, crossing two lines per cell; so 48 doors plus interior (grey) lines in total. But every time the path crosses a grey line, it simultaneously goes out of one cell and into another, meaning every grey line counts twice towards the total. So, if the path crosses $n$ grey lines, there are 48 - 2$n$ doors.
A cell with no walls requires the path to cross two grey lines to pass through it. There are 8 such cells, 4 near the corners and 4 near the centre, requiring 16 grey lines to be crossed. The 4 near the corners do not share any common lines, but three lines are shared between those near the centre. If the path were to cross one of those lines, it would count for two of the 16. Therefore, there may be up to three of the 16 counted twice, so the path must cross a minimum of 13 grey lines in order to pass through all 8 cells. This sets the upper bound on the number of doors to be 22. Hence there are exactly 22 doors and exactly 13 interior lines are crossed; three of them must be the shared lines and the remainder must all be along the perimeters of one of the 8 cells (ie not the left of "3" or the right of "7"). The path must also go from "12" to G without crossing another door.
Let's draw this in,
including the required corners:
Now you just have to analyse the picture (a lot):
It should be easy to see that in order to reach "1", the path must go straight across the bottom. There is then only one way into "1", and a corner above it:
Now look at the path leaving "12". It cannot go down, since then it is guaranteed to enter the inner region again. Then look at the corner to the bottom-right; to avoid creating a loop, the wall to the top-left must be a door. We can say a similar thing about the corner to the left of "3". We can then extend the line along the bottom:
Look again at the corner to the bottom-right of "12". If it were to continue upwards, the path would be unable to go from "12" to G without crossing another door. So it instead must turn left, and the path from "12" fills in the corner. To avoid trapping one of the cells adjacent to G, this corner must continue upwards, and another corner appears. The route to G is then clear, and yet another corner is filled:
Now look at the cell below "12". If the path were to go up, by working backwards one can see it would skip "5", "7" and "9", and if it were to continue straight, by considering the route from "1" one can see it would either reach "3" too soon or "3" would be in a loop. So it must go down; avoiding another loop gives the route out of "1", and another corner appears:
The way through "3" is now clear, and a number of corners can be filled and loops avoided:
Now look at the path from "3". It's too early to pass "7", so "7" is a corner. It is too early for this corner to continue up and join the path to "12", so it turns left, pushing the path to "12" further left also, until the path from "7" reaches "9" and the path to "12" hits the corner:
Now, if the path were to go down from "9", it would enter the inner region for the 9th time. To then join the path to "12", it would first have to enter the outer region for the 10th time, thus arriving at "12" on its 13th visit. So it must continue straight through "9". One more corner is revealed:
Now look at the path leaving "3". If it were to go down, it would have to go down again since it's too soon to reach "5". It would join up to the unjoined section near the bottom, and would subsequently be on its 5th visit to the outer region. It would then be unable to pass "5" without either a) trapping cells, or b) returning to the inner region first, thus passing "5" on its 6th visit. Hence, the path leaving "3" must continue straight, over the top of "5". It then solves itsef, by simply ensuring the path from "3" doesn't pass "5" too early or join the path from "7" until after passing "5":