Leetcode 135
2020-12-24描述
-
需要按照以下要求,帮助老师给这些孩子分发糖果:
-
贪心, 两边扫描
class Solution { public: int candy(vector<int>& ratings) { vector<int> ret(ratings.size(), 1); for (int i = 1; i < ratings.size(); ++i) { if (ratings[i - 1] < ratings[i]) ret[i] = ret[i - 1] + 1; } for (int i = ratings.size() - 1; i > 0; --i) { if (ratings[i] < ratings[i - 1]) ret[i - 1] = max(ret[i] + 1, ret[i - 1]); } int sum = accumulate(ret.begin(), ret.end(), 0); return sum; } };