代码随想录 打卡第二十八天
134 加油站class Solution { public: int canCompleteCircuit(vectorint gas, vectorint cost) { int cursum 0; int index 0; int sum 0; for(int i 0;i gas.size();i){ sum gas[i] - cost[i]; cursum gas[i] - cost[i]; if(sum 0){ sum 0; index i 1; } } if(cursum 0) return -1; return index gas.size() ? -1 : index; } };135 分发糖果class Solution { public: int candy(vectorint ratings) { vectorint count(ratings.size(),1); for(int i 1;i ratings.size();i){ if(ratings[i] ratings[i-1]) count[i] count[i-1] 1; } for(int i ratings.size()-1;i 0;i--){ if(ratings[i-1] ratings[i]){ if(count[i-1] count[i]) count[i-1] count[i] 1; } } int sum 0; for(int i 0;i ratings.size();i){ sum count[i]; } return sum; } };860 柠檬水找零class Solution { public: bool lemonadeChange(vectorint bills) { unordered_mapint,int box; for(int i 0;i bills.size();i){ if(bills[i] 5) box[5]; if(bills[i] 10){ box[10]; if(box[5] 1) return false; else box[5]--; } if(bills[i] 20){ box[20]; if(box[10] 1){ box[10]--; if(box[5] 1) return false; else box[5]--; }else{ if(box[5] 3) return false; else{ box[5]--; box[5]--; box[5]--; } } } } return true; } };406 根据身高重建队列class Solution { public: vectorvectorint reconstructQueue(vectorvectorint people) { vectorvectorint queue; sort(people.begin(),people.end(),[](vectorint a,vectorint b){ if(a[0] b[0]){ if(a[1] b[1]) return true; else return false; } if(a[0] b[0]) return true; else return false; }); for(int i 0;i people.size();i){ int posion people[i][1]; queue.insert(queue.begin() posion,people[i]); } return queue; } };