There are n gas stations in a circle. `gas[i]` is the fuel at station i and `cost[i]` is the fuel needed to drive from station i to i+1. Starting with an empty tank, return the index of the station from which you can complete the full circuit once, or -1 if impossible. The answer is unique when it exists.