코테준비 - Gas Station

정상화·2023년 2월 26일

LeetCode

목록 보기
131/222

Gas Station

class Solution {
public:
    int canCompleteCircuit(vector<int> &gas, vector<int> &cost) {
        int sum = 0;
        vector<int> gain(gas.size());
        for (int i = 0; i < gain.size(); i++) {
            gain[i] = gas[i] - cost[i];
            sum += gain[i];
        }
        if (sum < 0) return -1;

        int start, acc, cursor;
        start = acc = cursor = 0;
        for (; cursor < gain.size(); cursor++) {
            acc += gain[cursor];
            if (acc < 0) {
                start = cursor + 1;
                acc = 0;
            }
        }

        return start;
    }
};
profile
백엔드 희망

0개의 댓글