题目

https://leetcode-cn.com/problems/gas-station/

思路 - 暴力

每个加油站都试一遍,O(n^2) 时间

  1. class Solution {
  2. public int canCompleteCircuit(int[] gas, int[] cost) {
  3. int n = gas.length;
  4. for (int i = 0; i < n; i++) {
  5. int start = i;
  6. int count = 0;
  7. int remain = gas[start];
  8. while (count < n) {
  9. start %= n;
  10. if (remain < cost[start]) {
  11. break;
  12. }
  13. remain = remain - cost[start] + gas[(start + 1) % n];
  14. count++;
  15. start++;
  16. }
  17. if (count == n) {
  18. return i;
  19. }
  20. }
  21. return -1;
  22. }
  23. }