首页 > 代码库 > leetcode分配糖果问题
leetcode分配糖果问题
int candy(vector<int> &ratings) { vector<int> priority(ratings); for(int i=0;i<priority.size();i++) ratings[i]=1; //_从右往左比 for(int i=1;i<priority.size();i++) { if(priority[i]>priority[i-1]&&ratings[i]<=ratings[i-1]) ratings[i]=ratings[i-1]+1; //if(priority[i]==priority[i-1]) ratings[i]=ratings[i-1]; //_晕,不需考虑同级情况,要注释掉才对 } //_从左往右比 for(int i=priority.size()-1;i>0;i--) { if(priority[i-1]>priority[i]&&ratings[i-1]<=ratings[i]) ratings[i-1]=ratings[i]+1; //if(priority[i-1]==priority[i]) ratings[i-1]=ratings[i]; } int sum=0; for(int i=0;i<priority.size();i++) sum+=ratings[i]; return sum; }
leetcode分配糖果问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。